Электроника и МП техника. Китаев Ю.В. - 10 стр.

UptoLike

Составители: 

10
ADD М; (A) <-- (A) + ((HL)). Сложить содержимое аккумулятора и ячейки
памяти с адресом, который хранится в паре HL. Результат автоматически
сохраняется в аккумуляторе.
МOV М, A; ((HL)) <-- (A). Переслать содержимое аккумулятора в ячейку
памяти с адресом, который хранится в паре HL.
DCR С; (С) <-- (С) - 1. Уменьшить содержимое регистра С на 1.
LXI H, ист; (HL) <-- ист . Записать в пару регистров HL двухбайтовое
число с символическим именем "ист". При выполнении этой команды МП
трактует "ист" просто, как двухбайтовое число, а не как адрес.
JNZ метка; Переход к физическому адресу с символическим имененм
"метка", если в результате, предшествующей команды, влияющей на "флаг
нуля" получен не нулевой результат.
МVI С, N-1; (С) <-- N-1. Загрузить в регистр С
однобайтовое число N-1.
INX H; (HL) <--(HL) + 1. Увеличить содержимое пары HL на 1.
Так может выглядеть решение 2-ой задачи, записанное на ассемблере
МASМ или TASМ для семейства процессоров 80x86.
mov bx,OFFSET ист
mov cl,3 - 1
mov al,[bx]
m1: inc bx
add al,[bx]
dec cl
jnz m1
inc bx
mov [bx],al
Пример записи программы (листинг программы):
ПРИМЕЧАНИЯ:
1. Команды могут быть одно-, двух- и трех-байтовыми,
2. Первым байтом любой команды является код операции
или КОП, (в
справочном приложении (таблица 1.2)) расположен слева от обозначения
команды.
3. В таблице кодов (1.2) в двухбайтовых командах второй байт - операнд
обозначен - d8 (восемь бит),
4. В таблице кодов (1.2) в трехбайтовых командах двухбайтовый операнд
обозначен - d16 или Addr (16 бит).
Предположим в некой вымышленной программе первая команда -
mvi c, 8 и начальный адрес программы прог = 0809(hex). Из справочника
(таблица
1.2) находим код этой команды КОП = 0e(hex) и отмечаем, что
команда двухбайтовая (d8). Поэтому в нашей программе эта команда
занимает два байта по адресам 0809 и 080А. Здесь и далее КОП'ы выделены
фиолетовым цветом.