Запоминание/загрузка аккумулятора и пары HL


а)

STAX B [(B)(C)] (A) <B1>

б)

STAX D [(D)(E)] (A) <B1>

в)

LDAX B (A) [(B)(C)] <B1>

г)

LDAX D (A) [(D)(E)] <B1>

7 0

По командам группы а) и б) содержимое аккумулятора запоми­нается в оперативной памяти по адресу, хранимому в паре регистров ВС (а) или DE (б). По командам группы в) и г) содержимое оперативной памяти из ячейки, адресом которой является содержимое пары регистров ВС (в) или DE (г), загружается в аккумулятор.

Команды группы а - г являются однобайтовыми и выполняются за два машинных цикла (7 тактов). Для того, чтобы можно было восполь­зоваться этими командами, в соответствующую пару регистров необходимо предварительно загрузить нужный адрес.

 

Примеры:

B1) STAX D

Адрес/регистр Код до выполнения операции Код после выполнения операции
00B1
А
D
E
E3
PC 00B1 00B2

По этой команде содержимое аккумулятора (A)=49H будет скопи­ровано в ячейку памяти с адресом 6699 Н, хранимым в паре регистров DE.

STAX B

Адрес/регистр Код до выполнения операции Код после выполнения операции
B 0A 0A
C
A
0A11 BE
FL
PC

LDAX B

Адрес/регистр Код до выполнения операции Код после выполнения операции
0A 0A
B 0A 0A
C
A BF
0A11 BE BE
FL
PC

 

LDAX D

Адрес/регистр Код до выполнения операции Код после выполнения операции
1A 1A
D
E
E3 E3
A E3
FL
PC

 

д)

STA Адрес [<B3><B2>] (A) <B1>
  <B2> Мл. байт адреса
  <B3> Ст. байт адреса

е)

LDA Адрес (A) [<B3><B2>] <B1>
  <B2> Мл. байт адреса
  <B3> Ст. байт адреса

7 0

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

Команды этой группы трехбайтовые, выполняются за 4 цикла (13 тактов).

F00) STA 0F1C

По этой команде содержимое аккумулятора скопируется в ячейке памяти с адресом OF1C

Адрес/регистр Код до выполнения операции Код после выполнения операции
1F00
1F01 1C 1C
1F02 0F OF
0F1C 2A
A
PC 1F00 1F03

После выполнения операции и в ячейке OF1C и в аккумуляторе будет записано одно и то же число.

 

LDA 0F1C

Адрес/регистр Код до выполнения операции Код после выполнения операции
1C 1C
0F 0F
0F1C 2A 2A
A 2A
FL
PC

 

 

ж)

SHLD Адрес [<B3><B2>] (L) <B1>
  [<B3><B2>+1] (H) <B2> Мл. байт адреса
  <B3> Ст. байт адреса

з)

LHLD Адрес (L) [<B3><B2>] <B1>
  (H) [<B3><B2>+1] <B2> Мл. байт адреса
  <B3> Ст. байт адреса

7 0

По командам этой группы происходит передача данных из пары регистров HL в две соседние ячейки оперативной памяти (ж) или в обратном направлении (з). 16-разрядный адрес первой ячейки приводится во втором и третьем байтах команды; адрес второй ячейки вычисляется в МП с помощью инкремента (увеличения на единицу) содержимого второго и третьего байтов команды.

Команды этой группы трехбайтовые, выполняются за 5 циклов(16 тактов). При выполнении команд параграфа 2.4 содержимое триггеров признаков не изменяется.

F41) SHLD 32AF

При выполнении этой команды содержимое пары регистров HL будет скопировано в соседних ячейках памяти 32AF и 32BO. При этом содержимое (HL) не изменяется.

Адрес/регистр Код до выполнения операции Код после выполнения операции
0F41
0F42 AF AF
0F43
32AF 4B 5D
32B0 8D 3F
H 3F 3F
L 5D 5D
PC 0F41 0F44

 

LHLD 6AFF

Адрес/регистр Код до выполнения операции Код после выполнения операции
2A 2A
FF FF
6A 6A
H FD
L AF
6AFF
6B00 FD FD
FL
PC

 

 



Дата добавления: 2021-02-19; просмотров: 402;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.013 сек.