Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Org 20h



NUM1 DS N; Память для первого числа

NUM2 DS N; Память для второго числа

 

ORG 0C100H; Установка программного счетчика на адрес 0C100h

MOV R0,#NUM1;Запись в R0 начального адреса первого числа

MOV R1,#NUM2;В R1 – начальный адрес второго числа

MOV R2,#N;В R2 – формат операндов в байтах

CLR C;Сброс переноса

L1: MOV A,@R0;Загрузка в аккумулятор текущего байта первого слагаемого

ADDC A,@R1;Сложение байт с учетом переноса

MOV @R0,A;Размещение байта результата

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

INC R1

DJNZ R2,L1;Цикл, если не все байты просуммированы

END

 

2. Программа складывает многобайтные BCD-числа, расположенные в резидентной памяти данных (РПД). Регистры R0 и R1 указывают начальные адреса слагаемых. Слагаемые расположены в РПД, начиная с младших байтов. Формат слагаемых одинаков и задается в R2 числом байтов. Результат сложения помещается на место первого слагаемого:

 

; Суммирование Z=W+Y

; (R0) – начальный адрес W

; (R1) – начальный адрес Y

; (R2) – длина слагаемых W и Y

 

CLR C; Сброс флага переноса

L: MOV A,@R0; Загрузка текущего байта W

ADDC A,@R1; Сложение

DAA; Коррекция

MOV @R0,A; Размещение текущего байта результата

INC R0; Продвижение указателей байт слагаемых

INC R1

DJNZ R2,L; Декремент R2, повтор, пока R2 не равно 0

 

Программа вычитает строку, указанную регистром R1, из строки, указанной регистром R0, с точностью, указанной регистром R2. После выполнения операции проверяется переполнение результата.

 

SUB: CLR C; 3аем=0

BEG: MOV A,@R0; Загрузка байта уменьшаемого

SUBB A,@R1; Вычитание байта

MOV @R0,A; Запоминание байта разности

INC R0; Установка указателей на следующее

INC R1; поле

DJNZ R2,BEG; Выполнение цикла до завершения операции

 

; После завершения цикла проверяется ситуация переполнения в последней итерации.


Дата добавления: 2015-07-11; просмотров: 92 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.008 сек.)