Учебники

Встроенные системы — регистры SFR

Регистр специальных функций (или регистр специального назначения, или просто регистр специального назначения) — это регистр в микропроцессоре, который управляет или контролирует различные функции микропроцессора. Поскольку специальные регистры тесно связаны с какой-то специальной функцией или состоянием процессора, они не могут быть непосредственно записаны обычными инструкциями (такими как сложение, перемещение и т. Д.). Вместо этого некоторые специальные регистры в некоторых процессорных архитектурах требуют специальных инструкций для их изменения.

В 8051 регистры A, B, DPTR и PSW являются частью группы регистров, обычно называемых SFR (регистры специальных функций). Доступ к SFR можно получить по его имени или по адресу.

В следующей таблице приведен список SFR и их адреса.

Байт Адрес Битовый адрес
FF
F0 F7 F6 F5 F4 F3 F2 F1 F0 В
E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC
Д0 D7 D6 D5 D4 D3 D2 Д0 PSW
B8 До нашей эры BB BA B9 B8 IP
B0 B7 B6 B5 B4 B3 Би 2 B1 B0 P3
A2 AF переменный ток AB А.А. A9 A8 IE
A0 A7 A6 A5 A4 A3 A2 A1 A0 P2
99 Не битовая адресуемая SBUF
98 9F 9E 9D 99 98 SCON
90 97 96 95 94 93 92 91 90 P1
8D Не битовая адресуемая TH1
8C Не битовая адресуемая TH0
Не битовая адресуемая TL1
Не битовая адресуемая TL0
89 Не битовая адресуемая TMOD
88 8F 8E 8D 8C 89 88 TCON
87 Не битовая адресуемая PCON
83 Не битовая адресуемая DPH
82 Не битовая адресуемая DPL
81 Не битовая адресуемая SP
80 87 87 85 84 83 82 81 80 P0

Рассмотрим следующие два момента об адресах SFR.

  • Регистр специальной функции может иметь адрес от 80H до FFH. Эти адреса выше 80H, так как адреса от 00 до 7FH являются адресами оперативной памяти внутри 8051.

  • Не все адресные пространства от 80 до FF используются SFR. Неиспользуемые местоположения, от 80H до FFH, зарезервированы и не должны использоваться программистом 8051.

Регистр специальной функции может иметь адрес от 80H до FFH. Эти адреса выше 80H, так как адреса от 00 до 7FH являются адресами оперативной памяти внутри 8051.

Не все адресные пространства от 80 до FF используются SFR. Неиспользуемые местоположения, от 80H до FFH, зарезервированы и не должны использоваться программистом 8051.

CY PSW.7 Несут флаг
переменный ток PSW.6 Вспомогательный флаг для перевозки
F0 PSW.5 Флаг 0 доступен пользователю общего назначения.
RS1 PSW.4 Зарегистрировать селектор банка, бит 1
RS0 PSW.3 Зарегистрировать селектор банка, бит 0
О.В. PSW.2 Флаг переполнения
PSW.1 Определяемый пользователем FLAG
п PSW.0 ФЛАГИ Паритета. Устанавливается / сбрасывается аппаратно во время цикла инструкций для указания четного / нечетного числа 1 бита в аккумуляторе.

В следующем примере имена регистров SFR заменяются их адресами.

CY переменный ток F0 RS1 RS0 О.В. п

Мы можем выбрать соответствующий бит регистра банка, используя биты RS0 и RS1.

RS1 RS2 Зарегистрировать банк Адрес
0 0 0 00H-07H
0 1 1 08H-0FH
1 0 2 10H-17H
1 1 3 18H-1FH

Слово состояния программы (PSW) содержит биты состояния, отражающие текущее состояние ЦП. Варианты 8051 предоставляют один специальный регистр функций, PSW, с этой информацией о состоянии. 8251 предоставляет два дополнительных флага состояния, Z и N, которые доступны во втором регистре специальной функции под названием PSW1.