Снос зданий:
ecosnos.ru
Главная  Микроустройства: номенклатура изделий электронной промышленности 

1 2 3 4 5 6 7 8 9 10 11 [ 12 ] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95

j 15. Программа многобайтового сложения двоичных чисел

eg 0

1 ко-

Команда н операнд

Содержание команды. Пояснения

ю

MVI D, п

n - - PD. В регистр PD записывается длина п чисел в байтах

LX1 ВС, а

а-РВС, PPHL. В регистры РВС и PHL заносятся адреса а и fi младших байтов слагаемых

сй+5 .

LXI HL, р

OR А Л

V А~РА. Установка признака Q в 0 путем выполнения команды поразрядной дизъюнкции, после выполнения которой всегда Q = 0

(0+9

LDAXB

ЗУ (ВС) РА. Пересылка из ЗУ по адресу ВС очередного байта первого слагаемого в РА

со+Ш

ADCH

А + ЗУ (HL) + Q -> РА. Сложение очередных байтов чисел

со+11

STAXB

РЛЗУ (ВС). Сумма очередных байтов записывается в ЗУ по адресу ВС, взятому из регистра РВС

co+l2

DCR D

D - 1 PD. Уменьшение содержимого регистра PD па 1 с целью определения конца операции многобайтового сложения

(0+13

JZ cu+21

Переход по Z= I. Если признак 2=1, который в данном случае означает, что содержимое PD равно нулю и, следовательно, все байты просуммированы, то осуществляется переход к команде HLT. Если Z = 0, то осуществляется переход к команде сй+16

INXB

ВС + 1 -v РВС. HL+ 1-*- PHL. Образование

со+17

INXH

адресов следующих байтов слагаемых

JMP (0+9

Безусловный переход к команде со + 9 (начало цикла)

Останов. Последняя команда программы



Мб. Программа десятичного вычитания

X ксо

Команла и операнд

Содержание команды. Пояснения

И

MV] с, II

п-РС. В регистр PC записывается длина п чисел в байтах

(0 + 2

Q= 1. Триггер переноса устанавливается в I

со + 3

MV1 А, 99

99- РА. В регистр РА заносится двоичный код 1001 1001 числа 99

(0 + 5

АС1 0

Л + 0 + Q - РА. Прибавление переноса, образовавшегося в предыдущем цикле, к числу 99

(0 + 7

н

Л - 3У (HL)-PA. .Образование очередного байта дополнительного кода вычитаемого

(0 + 8

XCHG

PHL**PDE. Регистры PHL и PDE обмениваются информацией

со +9

ADD Н

A-\-3Y (HL)-PA. Определение очередного байта результата

(0+10

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

Ш.+ И

Н, А

Л -> ЗУ (HL). Очередной откорректированный байт результата заносится на место использоваи-ного байта уменьшаемого

(0+ 12

XCHG

PHL*-*PDE. Регистры PWL и PDE обмениваются содержимым

©+ 13 (0+14

INX D INXH

DE+ PDE, HL+\- PHL. Путем прибавления 1 формируются адреса следующих байтов операндов

(0+15

DCR С

С - 1 - - PC. Содержимое счетчика циклов уменьшается на 1

С0+ 16

, JNZ

CU+ 3

Переход по Z = 0. Если Z = 0, то это в данном случае означает, что еще не над всеми байтами въиюлнены операции и, следовательно, надо вернуться на начало цикла к команде MV1. При Z = 1 переход осуществляется к следующей команде

(0+19

Останов



1.17. Цифровая диаграмма вычитания трехбайтных чисел

о

Пояснения

Исходные числа

3-й цикл

2-й цикл

I-ft цикл

MV1 ACI

Результат

Перенос

Результат

Операнд

Результат

Операнд

Результат

Константа

Результат

Окончательный результат

1001

10QI

1001

1001

1001

1001

0-<--

1001

1001

1001

1010

1001

1010

1001

0001

J001

1000

0001

0111

0000

1000

0000

0010

1000

ООН

ООП

1001

0111

оно

0101

0100

0100

0001

0111-

1000

1101

0111

0000

оно

0000

0000

оно

0000

0100

0111 0 0111

1000 1

ООН

0111

0100

0111

0111

1000

ООН

0111

1.18. Программа умножения 16-разрядиых чисел

Команда

Содержание команды. Пояснения

LXI Н 0

0-PHL. Сброс в 0 PHL для последующего накопления в нем суммы частичных произведений

MOV А, С

С - - РА. Младщий байт множителя засылается в РА для последующего просмотра его цифр

0)-(-4

MV1 с. 00001000

00001000PC. В счетчик циклов, организован, ный на PC, записывается число 8

(0+6

DADH

2HL-* PHL. Сдвиг суммы частичных произведений -

(0+7

2A-\-Q-PA. Очередной разряд множителя засылается в триггер переноса,-а старшая цифра величины 2Н1 - ъ младший разряд РА

(0+8

JNC (0+14

Переход по Q = 0. Анализ состояния TQ, в ко- тором находится очередная цифра множителя

(0+11

DADD

DE-\-HL-*PHL. Образование нового значения суммы частичных произведений путем добавления множимого при Q = 1



1 2 3 4 5 6 7 8 9 10 11 [ 12 ] 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95