Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
R_BIN_N_2.doc
Скачиваний:
1
Добавлен:
20.11.2019
Размер:
323.58 Кб
Скачать

Программа 2.5.

Увеличение на 5 числа, записанного в ячейке памяти по адресу 0B00h и записи результата в ячейку памяти с адресом 0B01h.

; Программа 2.5.

;Входной параметр: M(0B00) - исходное число

;Выходной параметр: M(0B01) - результат инвертирования

.org 0800h ; Область программы

LDA 0B00h;пересылка числа из ячейки адресом в регистр А

ADI 05; (A)+5 выполнить сложение

STA 0B01h;пересылка числа из регистра А в ячейку 0B01

RST 7 ; вернуться в монитор

;в микро-ЭВМ УМК-80 для возврата в монитор следует пользоваться ;командой RST 7.

.org 0B00h ;Область данных

.db 0E5h ;исходный байт

.db 00 ;результат

.end

Таблица №2 - Результат выполнения программы 2.5.

Значение числа в ячейке 0B00

Значение числа в ячейке 0B01

05

АA

CD

D2

FE

03

Вывод: Число, записанное в ячейке памяти по адресу 0В00 увеличивается на 5 и записывается в ячейку памяти с адресом 0В01.

Программа 2.6.

0001 0000 ; Программа 2.6.

0002 0000 ;Входной параметр: M(0B00) - исходное число

0003 0000 ;Выходной параметр: M(0B01) - результат инвертирования

0004 0800 .org 0800h ; Область программы

0005 0800 3A 4C 04 LDA 0B00; поместить в A число из ячейки адресом 0BA0

0006 0803 21 B0 04 LXI H,0BA0; поместить число в HL число из ячейки с адресом 0BA0

0007 0806 86 ADD M; выполнить сложение (A)+M (HL)

0008 0807 32 01 0B STA 0B01h;пересылка из A в ячейку с адресом 0B01h

0009 080A DA 12 08 JC M0; переход к M,если CY=1

0010 080D 3E 00 MVI A,00;обнуление аккумулятора

0011 080F C3 14 08 JMP M1; переход к М 1, если условие не выполнено

0012 0812 3E 01 M0: MVI A,01 ; пересылка числа 01 в регистр А

0013 0814 32 02 0B M1: STA 0B02h; пересылка из A в ячейку с адресом 0B02

0014 0817 FF RST 7 ; вернуться в монитор

0015 0818 ;в микро-ЭВМ УМК-80 для возврата в монитор следует пользоваться ;командой RST 7.

0016 0B00 .org 0B00h;Область данных

0017 0B00 65 .db 0A1;исходный байт

0018 0B01 00 .db 00 ;результат

0019 0BA0 .org 0BA0h;Область данных

0020 0BA0 C3 .db 0C3h;исходный байт

0021 0BA1 00 .db 00 ;результат

0022 0BA2 .endtasm: Number of errors = 0

Таблица №3 - Результат выполнения видоизмененной программы 2.6.

Значение числа в ячейке 0B00

Значение числа в ячейке 0BA0

Значение числа в ячейке 0B01

Значение числа в регистре 01 (влияние на CY)

0B

B0

BB

0

FE

B5

B3

1

A1

C3

64

1

Вывод: результат сложения двух чисел, записанных в ячейках с адресами 0В00 и 0В0А, может быть двухбайтным числом, программа 2.6 обеспечивает размещение байтов результата в соседних ячейках памяти.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]