Содержимого указателяБольшое число регистров, особенно при наличии обеспечивающего их эффективное использование «оптимизирующего компилятора», позволяет до предела сократить обращение к ОП путем сохранения на регистрах промежуточных результатов, передачи через регистры операндов из одних программ в другие программы или подпрограммы, отказа от передач на сохранение в ОП содержимого регистров при прерываниях.
Процедурам динамически выделяются небольшие группы регистров фиксированной длины (регистровые окна). Окна последовательно выполняемых процедур перекрываются, благодаря чему возможна передача параметров от одной процедуры к другой. При вызове процедуры процессор переключается на работу с другим регистровым окном, при этом не возникает необходимости в передаче содержимого регистров в память.
Перед выходом из прерывающей программы последняя восстанавливает из стека состояния регистров, в том числе аккумулятора и регистра признаков, которые они имели перед прерыванием, и управление переходит к прерванной программе (команда RET). Перед выполнением процедуры запоминания и восстановления содержимого регистров прерывание запрещается (команда DI), а по их завершении разрешается (команда EL).
Всего может быть 64 варианта команды простого сложения с использованием регистров 1 и 2. Зададимся значениями содержимого регистров и некоторых, нужных нам для примера, ячеек с номерами 005600, 007266, 000400. При этом не надо забывать, что старшие 4К. ячеек предназначены для нумерации регистров устройств ввода-вывода и ВЗУ, поэтому если встречается физический адрес > 124К, то это показывает, что операнд берется из регистров внешних устройств (или направляется в эти регистры). Итак:
2. Команды арифметические предназначены для выполнения сложения, вычитания, увеличения или уменьшения содержимого регистров или ячеек памяти на единицу.
2) арифметические команды. Предназначены для выполнения сложения, вычитания, увеличения или уменьшения содержимого регистров или ячеек памяти;
PCHL (ЗАГРУЗКА СОДЕРЖИМОГО РЕГИСТРОВ Н и L В ПРОГРАММНЫЙ СЧЕТЧИК) (РСН)ч-(Н) (PCL)i-(L)
X — безразлично PUSH гр (ЗАСЫЛКА В СТЕК СОДЕРЖИМОГО ПАРЫ РЕГИСТРОВ)
Содержимое старшего регистра пары регистров гр пересылается в ячейку памяти, адрес которой на единицу меньше содержимого указателя СТЕКа SP. Содержимое младшего регистра пары регистров гр пересылается в ячей-
SPHL (ПЕРЕСЫЛКА СОДЕРЖИМОГО РЕГИСТРОВ Н, L В УКАЗАТЕЛЬ
Увеличение на 1 содержимого регистров Н, L
Старшие 8 бит адреса следующей команды пересылаются в ячейку памяти, адрес которой на единицу меньше содержимого указателя СТЕКа SP. Младшие 8 бит адреса следующей команды пересылаются в ячейку памяти, адрес которой на 2 меньше содержимого указателя СТЕКа SP. Содержимое указателя СТЕКа уменьшается на 2. Управление передается команде, адрес которой указан во втором и третьем байтах команды вызова.
Содержимое ячейки памяти, адрес которой содержится в указателе СТЕКа SP, пересылается в младшие 8 бит программного счетчика PC. Содержимое ячейки памяти, адрес которой на единицу больше содержимого указателя СТЕКа, пересылается в старшие 8 бит программного счетчика. Содержимое указателя СТЕКа увеличивается на 2.
Старшие 8 бит адреса следующей команды пересылаются в ячейку памяти, адрес которой на единицу меньше содержимого указателя СТЕКа. Младшие 8 бит адреса следующей команды пересылаются в ячейку памяти, адрес которой на два меньше содержимого указателя СТЕКа. Содержимое указателя СТЕКа уменьшается на два. Управление передается команде, адрес которой соответствует коду NNN, умноженному на 8.
Содержимое старшего регистра пары регистров гр пересылается в ячейку памяти, адрес которой на единицу меньше содержимого указателя СТЕКа SP. Содержимое младшего регистра пары регистров гр пересылается в ячей-
ку памяти, адрес которой на 2 меньше содержимого указателя СТЕКа. Содержимое указателя СТЕКа уменьшается на 2.
Содержимое аккумулятора пересылается в ячейку памяти, адрес которой на единицу меньше содержимого указателя СТЕКа SP. Содержимое флагов объединяется в слово состояния, это слово пересылается в ячейку памяти, адрес которой на 2 меньше содержимого указателя СТЕКа. Содержимое указателя СТЕКа уменьшается на 2.
Содержимое ячейки памяти, адрес которой определяется содержимым указателя СТЕКа SP, используется для восстановления состояния флагов. Содержимое ячейки памяти, адрес которой на единицу больше содержимого указателя СТЕКа, пересылается в аккумулятор. Содержимое указателя СТЕКа увеличивается на 2.
Содержимое регистра L обменивается на содержимое ячейки памяти, адрес которой содержится в указателе СТЕКа SP. Содержимое регистра Н обменивается на содержимое ячейки памяти, адрес которой на единицу больше содержимого указателя СТЕКа.
Относительная адресация. Исполнительный адрес вычисляется как сумма содержимого указателя команд IP и 8- или 16-разрядного смещения со знаком, заданного непосредственно в команде ( 1.7, е). Следует подчеркнуть, что в момент вычисления исполнительного адреса значение указателя команд IP равно адресу первого байта следующей команды. Способ относительной адресации так же, как и прямая адресация, имеет ограниченное применение и используется только в командах переходов, вызова подпрограмм и управления циклами.
Стек содержит накопитель из четырех 4-разрядных регистров СТ0, CTj, CT2, СТ3 и 2-разрядного указателя стека, хранящего адрес входа в накопитель. Работой стека управляют сигналы FE и PUP. Сигнал FE служит сигналом разрешения изменения содержимого указателя стека, сигнал PUP — сигналом, определяющим направление изменения содержимого указателя стека (при PUP = О — уменьшение, при PUP = 1 — увеличение содержимого указателя стека).
Рассмотрим случай, когда в текущем N-w такте поступает сигнал FE — 1, при этом значение сигнала PUP безразлично. Значение FE 1 задает режим чтения без изменения содержимого указателя стека. При этом в текущем N-м такте из стека на вход БВА поступает
Похожие определения: Соединения электрических Соединения источника Соединения нескольких Соединения различных Соединения треугольником Соединением активного Соединение активного
|