Элементы и узлы информационных и управляющих систем (Основы теории и синтеза). Булатов В.Н. - 193 стр.

UptoLike

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

Рубрика: 

16.1.9 УМНОЖЕНИЕ ДВУХ ОДНОБАЙТОВЫХ ЧИСЕЛ
Результат имеет длину два байта. Регистры распределяются следующим
образом: Rl, R2 сомножители, R3 счетчик цикла. Произведение будет
находиться в А (старший байт) и Rl (младший байт).
Составляем программу:
BMPY: MOV R3,#08
; Организация счетчика с цик-
; лом, равным 8, в регистре
; R3
CLR A
; Очистка А
CLR С
; Очистка С
BMP1: RRC A
; Сдвиг двойного слова
XCH A
,
R1
; (содержимого А -
; с обменом его
RRC A
; с соде
р
жимым
XCH A,R1
; R1
JNC ВМРЗ
; Переход к ВМРЗ в случае,
; если т
р
игге
р
п
р
изнака пе
р
ено-
; са установлен в состояние 1.
ADD A,R2
; Сложение множимого и А
ВМРЗ: DJNZ R3
,
BMP
;Уменьшение счетчика на еди-
; ницу и переход на адрес BMP1, ес-
; ли R3
0
RRC А
; Сдвиг А
XCH A,R1
; Обмен содержимого А и R1
RRC А
;
XCH A,R1
;
  16.1.9 УМНОЖЕНИЕ ДВУХ ОДНОБАЙТОВЫХ ЧИСЕЛ
  Результат имеет длину два байта. Регистры распределяются следующим
образом: Rl, R2 − сомножители, R3 − счетчик цикла. Произведение будет
находиться в А (старший байт) и Rl (младший байт).

  Составляем программу:


BMPY:    MOV    R3,#08 ; Организация счетчика с цик-
                       ; лом, равным 8, в регистре
                       ; R3
         CLR    A      ; Очистка А
         CLR    С      ; Очистка С
BMP1:    RRC    A      ; Сдвиг двойного слова
         XCH    A,R1   ; (содержимого А -
                       ; с обменом его
         RRC    A      ; с содержимым
         XCH    A,R1   ; R1
         JNC    ВМРЗ   ; Переход к ВМРЗ в случае,
                       ; если триггер признака перено-
                       ; са установлен в состояние 1.
         ADD    A,R2   ; Сложение множимого и А
ВМРЗ:    DJNZ   R3,BMP ;Уменьшение счетчика на еди-
                       ; ницу и переход на адрес BMP1, ес-
                       ; ли R3≠0
         RRC    А      ; Сдвиг А
         XCH    A,R1   ; Обмен содержимого А и R1
         RRC    А      ;
         XCH    A,R1   ;