Регистр специальных функций
Регистр специальной функции (или регистр специального назначения , или просто специальный регистр ) — это регистр внутри микропроцессора , который управляет или контролирует различные аспекты функции микропроцессора. В зависимости от архитектуры процессора это может включать, помимо прочего:
- Ввод-вывод и периферийное управление (например, последовательные порты или ввод-вывод общего назначения)
- таймеры
- стека указатель
- ограничение стека (для предотвращения переполнения)
- счетчик программ
- подпрограммы обратный адрес
- состояние процессора (обработка прерывания, работа в защищенном режиме и т. д.)
- коды состояния (результат предыдущих сравнений)
Поскольку специальные регистры тесно связаны с какой-либо специальной функцией или состоянием процессора, они могут быть недоступны для прямой записи обычными инструкциями (такими как сложение, перемещение и т. д.). Вместо этого некоторые специальные регистры в некоторых архитектурах процессоров требуют специальных инструкций для их изменения. Например, во многих процессорных архитектурах счетчик программ не доступен для записи напрямую. Вместо этого программист использует такие инструкции, как возврат из подпрограммы, переход или переход, чтобы изменить счетчик программы. Другой пример: регистр кода состояния может быть недоступен для записи напрямую, а обновляется только с помощью инструкций сравнения.
Процессоры Intel
[ редактировать ]Некоторые биты SFR (регистра специальных функций) могут быть установлены непосредственно с помощью инструкций SETB/LDB по правильному адресу, тогда как другие могут потребовать использования определенных инструкций. Микроконтроллер класса Intel 80196 имеет 24 SFR, каждый размером 1 байт; стандартные чипы Intel 8051 имеют 21 SFR.
Регистр специальных функций (SFR) — это верхняя область адресуемой памяти, от адреса 0x80 до 0xFF. Эта область памяти не может использоваться для хранения данных или программ, а представляет собой серию отображенных в памяти портов и регистров. Таким образом, весь ввод и вывод портов может выполняться операциями перемещения памяти по указанным адресам в SFR. Кроме того, в SFR отображаются различные регистры состояния для использования при проверке состояния 8051 и изменении некоторых рабочих параметров 8051.
Внешние ссылки
[ редактировать ]- i8051 SFR
- РЕГИСТРЫ СПЕЦИАЛЬНЫХ ФУНКЦИЙ 1/2 в Wayback Machine (архивировано 29 января 2014 г.)
- SFR в программировании на C для AVR