Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ФЭ, Часть 2.doc
Скачиваний:
6
Добавлен:
22.12.2018
Размер:
1.01 Mб
Скачать

2. Арифметические и логические команды.

1) ADD r

(А)←(А)+(r)

(Add register) Сложение содержимого регистра и аккумулятора. Результат помещается в аккумулятор.

ADD M

(А)←(А)+((Н)(L))

(Add memory). Сложение аккумулятора с содержимым ячейки памяти, адрес которой содержится в регистрах Н и L. Результат помещается в аккумулятор.

ADI [байт]

(А)←(А)+(байт 2)

(Add immediate). Непосредственное сложение. Содержимое второго байта команды складывается с содержимым аккумулятора. Результат помещается в аккумулятор.

2) SUB r (Subtract register). Вычитание содержимого регистра.

(А)←(А)-(r) Содержимое регистра r вычитается из содержимого аккумулятора.

SUB M (Subtract memory). Вычитание содержимого памяти.

(А)←(А)-((H)(L)) Содержимое ячейки памяти, адрес которой содержится в паре, вычитается из аккумулятора. Результат помещается в аккумулятор.

SUI [байт] (Subtract immediate). Непосредственное вычитание.

(А)←(А)-(байт 2) Содержимое второго байта команды вычитается из аккумулятора. Результат помещается в аккумулятор.

3) INR r

(r)←(r)+1

(Increment register). Инкремент (увеличение) содержимого регистра. Содержимое регистра r увеличивается на единицу.

INR M (Increment memory). Инкремент содержимого памяти.

((H)(L))←((H)(L))+1 Содержимое памяти, адрес которой содержится в паре регистров HL, увеличивается на единицу.

INX rp

((rh)(rl))←((rh)(rl))+1

(Increment register pair). Инкремент содержимого регистровой пары rp (рассматриваемого как одно шестнадцатиразрядное слово).

4) DCR r (Decrement register). Декремент (уменьшение на единицу) содержимого регистра r.

DCR M

((H)(L))←((H)(L))-1

(Decrement memory). Декремент содержимого памяти: содержимое ячейки памяти, адрес которой содержится в регистрах HL, уменьшается на единицу.

DCX rp

((rh)(rl))← ((rh)(rl))

(Decrement register pair). Уменьшение на единицу содержимого регистровой пары.

5) ANA r

(А)←(А)&(r)

(And register). Над содержимым регистра r и аккумулятора выполняется операция логического умножения ("И"). Результат помещается в аккумулятор.

ANA M

(А)←(А)&((H)(L)).

(And memory). Над содержимым ячейки памяти, адрес которой находится в паре регистров HL, и аккумулятора выполняется операция логического умножения.

ANI [байт]

(А)←(А)&(байт 2)

(And immediate). Непосредственное "И". Над содержимым второго байта команды и аккумулятора выполняется операция логического умножения.

6) ORA r

(А)←(А)V(r)

(Or register). Операция логического сложения ("ИЛИ") над содержимым регистра и аккумулятора.

ORA M

(А)←(А)V((H)(L))

(Or memory). Над содержимым ячейки памяти, адрес которой содержится в паре HL, и аккумулятора выполняется операция логического сложения.

ORI [байт]

(А)←(А)V(байт 2)

(Or immediate). Непосредственное "ИЛИ" над содержимым аккумулятора и второго байта программы.

7) XRA r

(А)←(А)(r)

(Exclusive OR register). Операция "ИСКЛЮЧАЮЩЕЕ ИЛИ" над содержимым регистра и аккумулятора.

8) CMP r (Compare register). Сравнение содержимого регистра и аккумулятора. Содержимое регистра вычитается из содержимого аккумулятора. Аккумулятор не изменяется. По результатам вычитания флаги устанавливаются следующим образом: флаг нуля Z – в 1, если (А)=(r); флаг переноса (CY) – в 1, если (А)<(r).

CPI [байт] Непосредственное сравнение. Содержимое второго байта команды вычитается из содержимого аккумулятора. По результату вычитания флаги устанавливаются следующим образом: Z устанавливается в 1, если (А)=(байт 2); (CY) устанавливается в 1, если (А)<(байт 2).

9) CMA

(А)←()

(Complement accumulator). Инвертирование аккумулятора.

10) RLC (Rotate left). Циклический сдвиг влево. Содержимое аккумулятора сдвигается влево на одну позицию. Содержимое самого старшего бита заносится в младший бит и бит флага переноса.

RAL Циклический сдвиг влево через перенос.

RRC (Rotate right). Циклический сдвиг вправо.

RAR Сдвиг вправо через перенос.