Архитектурные особенности микро-ЭВМ
Микро-ЭВМ ..ВЕ52 позволяет управлять пятью (частично пересекающимися) адресными пространствами памяти, четыре из которых являются областями данных:
· RSEG - пространство регистров (4´8 байт);
· DSEG - пространство внутренней памяти данных (256 байт);
· BSEG - битовое пространство данных (256 бит);
· XSEG - пространство внешней памяти данных (до 64К байт);
· CSEG - пространство программного кода (до 64К байт).
Рис. 11.9. Организация магистрали для подключения внешних ресурсов
Пространства RSEG и BSEG частично пересекаются, физически совмещаются с DSEG и образуют единую внутреннюю среду для хранения данных. Это позволяет одни и те же данные рассматривать с разных позиций (ячейка памяти, регистр, битовое поле, порт ввода/вывода и т.п.) и организовывать наиболее удобный для данного случая доступ к ним.
Характерно, что все порты ввода/вывода, системные регистры, таймеры так же отображены на пространство DSEG.
Пространство регистров представлено четырьмя банками регистров по 8 РОН в каждом, а так же 16-разрядными программным счетчиком PC и регистром косвенного адреса DPTR, 8-разрядными аккумуляторами A и B, указателем стека SP и регистром PSW (Рис. 11.10)
15 0 | |||||||
PC | |||||||
DPH | DPL | DPTR | |||||
B | A | ||||||
C | AC | F0 | RS | OV | P | PSW | |
SP | |||||||
7 0 | |||||||
Рис. 11.10. Основные регистры микро-ЭВМ
Все регистры, показанные на Рис. 11.10, кроме PC, отображаются на DSEG.
Биты PSW[7:5] имеют тот же смысл, что и в ..ВЕ48:
PSW[7] - CY - перенос из старшего (7) разряда АЛБ;
PSW[6] - AC - перенос из третьего разряда АЛБ;
PSW[5] - F0 - флаг пользователя; Кроме того, формат PSW включает двухбитовое поле PSW[4:3] - RS номера банка регистров и флаги арифметического переполнения OV (PSW[2]) и четности P (PSW[1]).
Флаги CY, AC и OV отражают признаки результата последней арифметической операции, а P - четность содержимого аккумулятора A. Расширение аккумулятора B используется в командах умножения и деления, а в остальных операциях - как обычная ячейка памяти.
Программный счетчик адресует пространство памяти программ CSEG объемом до 64K байт, причем переход из области внутренней памяти программ к внешней осуществляется, как и в ..ВЕ48, автоматически.
Указатель данных DPTR используется для обращения к XSEG и при пересылке констант из CSEG в A. Кроме того, содержимое DPTR используется а качестве смещения в команде перехода.
Указатель стека SP образует системный стек глубиной до 256 байт. SP хранит адрес последнего занесенного байта и растет при записи в сторону больших адресов.
Регистры R0, R1 каждого банка используются в качестве указателей данных.
При сбросе машины в A, B, PC и DPTR загружаются 0h, а в SP <07h. Таким образом обеспечивается преемственность с ..ВЕ48.