Книга: Цифровые вычислительные устройства и микропроцессоры приборных комплексов

LOOP: MOV A,@R1 ; пересылка байта из регистра в ВПД

MOVX @R0,A ; через аккумулятор

INC R0 ; продвижение указателей

INC R1

DJNZ R2,LOOP ; продолжить, если переданы не все регистры

Пример 1.3 . Вычислить произведение двух 4-битных чисел, расположенных в младших тетрадах регистров R0 и R1. Для вычисления используется таблица произведений для всех комбинаций сомножителей (всего 256). Произведение двух тетрад имеет формат 1 байт. Таким образом, необходимая таблица произведений занимает одну страницу памяти. Данную таблицу удобно разместить на третьей странице РПП:

; вычисление Z = X*Y

; R0 = 0000XXXX

; R1 = 0000YYYY

; X и Y принимают значения 0 и 1

ORG 0 ; директива ассемблера, задающая

; начальный адрес программы

MOV A,R0 ; пересылка множимого в аккумулятор

SWAP A ; обмен тетрад аккумулятора

ORL A,R1 ; формирование в аккумуляторе

; адреса произведения

MOVP3 A,@A ; загрузка в аккумулятор произведения

ORG 0300 ; директива ассемблера, задающая начальный

; адрес таблицы на третьей странице РПП директивы ассемблера, формирующие таблицу произведений

DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; Z=0*Y

DB 1*0,1*1,1*2,…,1*0F ; Z=0*Y

DB 0F*0, 0F*1, 0F*2,…, 0F*0F ; Z=0*Y

Сложение положительных двоичных чисел . Выполнение этой операции покажем на примере:

Переносы 1 1 1

Первое слагаемое 0 0 1 1 0 1

Второе слагаемое 0 0 1 1 0 1

К-во Просмотров: 401
Бесплатно скачать Книга: Цифровые вычислительные устройства и микропроцессоры приборных комплексов