Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРАКТИКУМ ПО ОМПТ.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
662.53 Кб
Скачать

2.4.3. Команды обращения к памяти с прямой адресацией

LDA ADR (Load Accumulator direct)

<M(ADR)>  A

Содержимое ячейки памяти, адресуемой во втором и третьем байтах команды, передать в аккумулятор.

Циклов: 4

Тактов: 13

Признаки: отсутствуют

STA ADR (Store Accumulator direct)

<A>  M(ADR)

Содержимое аккумулятора передать в ячейку памяти, адресованную во втором и третьем байтах команды.

Циклов: 4

Тактов: 13

Признаки: отсутствуют

LHLD ADR (Load H and L direct)

<M(ADR)>  L; <M(ADR+1)>  H

Содержимое ячейки памяти, адресуемой во втором и третьем байтах команды, передать в регистр L. Содержимое ячейки памяти по следующему адресу передать в регистр H.

Циклов: 5

Тактов: 16

Признаки: отсутствуют

SHLD ADR (Store H and L direct)

<L> M(ADR); <H>  M(ADR+1)

Содержимое регистра L передать в ячейку памяти, адресуемую во втором и третьем байтах. Содержимое регистра Н передать в ячейку памяти с последующим адресом.

Циклов: 5

Тактов: 16

Признаки: отсутствуют

2.4.4. Команды обращения к стеку

PUSH RP'' (Push)

<RP''>  M(<SP>-1)M(<SP>-2); <SP>-2  SP

Запись в стек. Содержимое старшего регистра регистровой пары RP'' перемещается в ячейку памяти, адрес которой на единицу меньше исходного содержимого регистра SP. Содержимое младшего регистра регистровой пары RP'' помещается в ячейку памяти, адрес которой меньше исходного содержимого регистра SP на 2. Содержимое самого регистра SP уменьшается на 2.

Циклов: 3

Тактов: 11

Признаки: отсутствуют

POP RP'' (Pop)

< M(<SP>)M(<SP>+1)>  RP''; <SP>+2  SP

Чтение из стека. Содержимое ячейки памяти, адрес которой определяется содержимым регистра SP, засылается в младший регистр регистровой пары RP''. Содержимое ячейки памяти, адрес которой на единицу больше исходного содержимого регистра SP, засылается в старший регистр регистровой пары RP''. Содержимое самого регистра SP увеличивается на 2.

Циклов: 3

Тактов: 10

Признаки: устанавливаются только при выполнении команды POP PSW

XTHL (Exchange stack top with H and L)

<H>  <M(<SP>+1)>; <L>  <M(<SP>)>

Обмен содержимым регистровой пары H с вершиной стека. Регистр L обменивается содержимым с ячейкой памяти, адрес которой определяется содержимым регистра SP. Регистр Н обменивается содержимым с ячейкой памяти, адрес которой на единицу больше содержимого регистра SP.

Циклов: 5

Тактов: 18

Признаки: отсутствуют

2.4.5. Команды ввода-вывода

IN N (Input)

<N>  A

Данные, выданные адресуемым портом, передаются в аккумулятор.

Циклов: 3

Тактов: 10

Признаки: отсутствуют

OUT N (Output)

<A>  N

Содержимое аккумулятора выдается в адресуемый порт.

Циклов: 3

Тактов: 10

Признаки: отсутствуют

2.5. Команды обработки данных

Данная группа команд выполняет арифметические, логические и сдвиговые операции с данными, находящимися в регистрах и памяти. Все команды этой группы (за некоторым исключением) изменяют признаки состояния Z, S, P, CY, AC. Операции вычитания выполняются путем сложения с дополнением к вычитаемому, при этом признак ПЕРЕНОС выполняет функции признака ЗАЕМ.

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

ADD R (Add)

<A> + <R>  A

Содержимое регистра R сложить с содержимым аккумулятора, результат операции разместить в аккумуляторе.

Циклов: 1 / 2

Тактов: 4 / 7

Признаки: Z, S, P, CY, АС

ADC R (Add with carry)

<A> + <R> + <CY>  A

Содержимое регистра и признака переноса сложить с содержимым аккумулятора, результат операции разместить в аккумуляторе.

Циклов: 1 / 2

Тактов: 4 / 7

Признаки: Z, S, P, CY, AC

SUB R (Subtract)

<A> - <R>  A

Содержимое регистра R вычесть из содержимого аккумулятора, результат операции разместить в аккумуляторе.

Циклов: 1 / 2

Тактов: 4 / 7

Признаки: Z, S, Р, CY, АС

SBB R (Subtract with borrow)

<A> - <R> - <CY>  A

Содержимое регистра R и значение займа из разряда CY регистра признаков вычесть из содержимого аккумулятора, результат поместить в аккумулятор.

Циклов: 1 / 2

Тактов: 4 / 7

Признаки: Z, S, Р, CY, АС

INR R (Increment)

<R> + 1  R

Инкремент - содержимое регистра R увеличивается на 1. Устанавливаются все признаки, кроме признака переноса CY.

Циклов: 1 / 3

Тактов: 5 / 10

Признаки: Z, S, Р, АС

DCR R (Decrement)

<R> - 1  R

Декремент - содержимое регистра R уменьшается на 1. Устанавливаются все признаки, кроме признака переноса CY.

Циклов: 1 / 3

Тактов: 5 / 10

Признаки: Z, S, Р, АС