Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

SRL s o o P o 0 0

Cдвиг вправо на один разряд, в старший бит записывается 0, младший бит переписывается,во флаг переноса CY (деление на 2).

1-я буква 2-я буква 3-я буква 4-я буква
R - циклический сдвиг L - влево C – мимо CY A - акуммулятор
S - нециклический сдвиг R - вправо нет – через CY нет – другой, указанный регистр

Команды циклического переноса

 
 


CY Z P/V S N H

RLD • o P o 0 0

Левый арифметический циклический перенос тетрады из аккумулятора в ячейку памяти, адресуемую регистром HL. Старшая тетрада (биты 7... 4) ячейки памяти переносится в младшую тетраду аккумулятора (биты 3...0), младшая тетрадa аккумулятора переносится в младшую тетраду ячейки памяти, а младшая тетрада ячейки памяти — в старшую тетраду ячейки памяти.

 
 


CY Z P/V S N H

RRD • o P o 0 0

Правый арифметический циклический перенос тетрады из аккумулятора в ячейку памяти, адресуемую регистром HL. Старшая тетрада (биты 7...4) ячейки памяти переносится в младшую (биты 3...0), младшая тетрада ячейки памяти переносится в младшую тетраду аккумулятора, а младшая тетрада аккумулятора — в старшую тетраду ячейки памяти.

 

Команды операций над отдельными битами

_ CY Z P/V S N H

BIT b,d db ® Z • o Ï Ï 0 1

где d - A,B,C,D,E,H,L,(HL),(IX+d),(IY+d).

Проверка состояния бита, номер которого задается числом Ь в пределах от 0 (младший) до 7 (старший). Результат проверки помещается в бит Z регистра флагов (если проверяемый бит равен нулю, то Z=l).

 

CY Z P/V S N H

SET b,d 1 ® db • • • • • •

где d - А,В,С,D,E,H,L,(HL),(IX+d),(IY+d).

Установка бита. В бит с номером Ь записывается единица.

 

CY Z P/V S N H

RES b,d 0 ® db • • • • • •

где d - А,В,С,D,E,H,L,(HL),(IX+d),(IY+d).

Сброс бита. В бит с номером Ь записывается ноль.

 

Команды управления процессором

CY Z P/V S N H

NOP • • • • • •

Нет операции. Регистры и флаги не изменяются (за исключением регистров PC и R), процессор переходит к выполнению следующей за NOP команды.

 

CY Z P/V S N H

HALT • • • • • •

Останов процессора. Выполнение команды HALT эквивалентно бесконечному выполнению команды NOP, но без изменения значения регистра счетчика команд PC. Выход из состояния останова происходит либо при аппаратном сбросе процессора, либо с приходом сигнала маскируемого или немаскируемого прерывания. После выполнения программы обработки прерывания, управление будет передано на ячейку, следующую за командой HALT.

В ZX Spectrum команда HALT обычно используется для синхронизации выполнения программы относительно полукадровых прерываний, происходящих каждые 1 /50 секунды.

 

CY Z P/V S N H

DI 0 ® IFF1;0 ® IFF2 • • • • • •

Запрет маскируемых прерываний*. Сбрасывается триггер разрешения прерываний IFF.

 

CY Z P/V S N H

EI 1 ® IFF1;1 ® IFF2 • • • • • •

Разрешение маскируемых прерываний. Устанавливается триггер разрешения прерываний IFF.**

 

CY Z P/V S N H

IM 0 • • • • • •

IM 1

IM 2

Установка режима обработки маскируемых прерываний. Устанавливаются, соответственно, режимы О, 1 или 2.

 

Команды для работы с подпрограммами

CY Z P/V S N H

CALL nn SP-2®SP;PC®(SP);nn®PC[ • • • • • •

Безусловный переход к подпрограмме, расположенной по адресу nn, адрес следующей за CALL команды записывается в стек.

CY Z P/V S N H

CALL cc,nn SP-2®SP;PC® (SP);nn®PC[ • • • • • •

(при выполнении условия сс)

где сс — NZ — не ноль (флаг 2=0);

Z — ноль (флаг Z=1);

NC — нет переноса (флаг CY=0);

С — перенос (флаг CY=1);

PO — нечетность (флаг P/V=0);

РЕ - четность (флаг P/V=1);

Р — положительное (флаг S=0);

М — отрицательное (флаг S=1).

Условный переход к подпрограмме, расположенной по адресу nn. Переход осуществляется при выполнении условия cc, в противном случае команда игно рируется и управление передается следующей команде программы.___________

[На самом деле сначала выполняется nn®PC а затем всё остальное, что я обнаружил при взломе одной игрушки.

*)Более подробно о командах, обслуживающих прерывания, см. «Архитектура ZX Spectrum».

**)Следует отметить, что при выполнении команды EI запрещаются маскируемые прерывания на время между этой и следующей командами.

 

CY Z P/V S N H

RET (SP) ® PC;SP + 2 ® SP • • • • • •

Безусловный возврат из подпрограммы. Управление передается команде, расположенной по адресу, извлекаемому из стека.

CY Z P/V S N H

RET cc (SP) ® PC;SP + 2 ® SP • • • • • •

(при выполнении условия cc)

где cc - NZ,Z,NC,С,PO,РЕ,Р,М (см. CALL cc,nn).

Условный возврат из подпрограммы. Возврат из подпрограммы происходит при выполнении условия cc, в противном случае команда игнорируется.

CY Z P/V S N H

RETI IFF2®IFF1;(SP) ®PC;SP+2®SP • • • • • •


Дата добавления: 2015-10-28; просмотров: 123 | Нарушение авторских прав


Читайте в этой же книге: ОБЗОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | СИСТЕМА ПРЕРЫВАНИЙ | Стек калькулятора | ПРОГРАММИРОВАНИЕ НА АССЕМБЛЕРЕ GENS4 | ФРОНТАЛЬНАЯ ПАНЕЛЬ | СИСТЕМНЫЕ ПЕРЕМЕННЫЕ |
<== предыдущая страница | следующая страница ==>
Установка флага переноса CY.| Условный переход по относительному адресу при ненулевом счетчике.

mybiblioteka.su - 2015-2024 год. (0.008 сек.)