ВУЗ:
Составители:
Рубрика:
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 ;
Страницы
- « первая
- ‹ предыдущая
- …
- 191
- 192
- 193
- 194
- 195
- …
- следующая ›
- последняя »
