Микропроцессоры с изменяемой (наращиваемой) разрядностью слова и микропрограммным управлением (секционные микропроцессоры) на примере микропроцессора К1804, страница 6

По адресу 200 было получено значение 170, которое свидетельствует о правильности проведенной операции.

·  Сложение двоично-десятичных чисел.

Важной требованием проведения операций с числами в данном формате является отслеживание межтетрадных переносов, которое выполняется с помощью команды DAA.

Адреса

Команды

Мнемоника

Комментарии

000

041

LXI H

Загрузка начального адреса памяти в указатель памяти

001

200

B2

мл. байт адреса

002

000

B3

ст. байт адреса

003

076

MVI A

Непосредственная загрузка A

004

010

B2

Байт данных слагаемого

005

206

ADD M

Сложение содержимого A с содержимым M

006

047

DAA

Десятичная коррекция

007

167

MOV M, A

Запоминание суммы в ячейке памяти

010

166

HLT

Останов

200+010 = 210

·  Вычитание двоично-десятичных чисел.

Данная программа производит вычитание двоично-десятичных чисел, которые представлены как 2 тетрады в байте.

Адрес

Команда

Мнемоника

Комментарий

000

041

LXI H

Загрузка пары HL

001

200

B2

002

000

В3

003

066

MVI M

Загрузка операнда 1 в регистр M

004

066

B2

операнд 1 (=36 в 2/10 системе)

005

076

MVI A

Загрузка аккумулятора

006

232

В2

число 100 в 2/10 системе (1001.1010)

007

326

SUI B2

Вычитание операнда 2 из аккумулятора

010

041

В2

операнд 2 (=21 в 2/10 системе)

011

206

ADD M

Добавление регистра M

012

047

DAA

Десятичная коррекция

013

167

MOV M,A

Загрузка результата в регистр М

014

166

HLT

Останов