Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Кафедра САПР
Звіт
Про виконання
Лабораторної роботи №6
Тема: Алгоритми виконання операцій додавання та віднімання двійково\кодованих десяткових чисел для однокристального МП 8080(КР580ВМ80А)
Виконала:
студентка групи КН-3
Львів – 2008
Тема: Алгоритми виконання операцій додавання та віднімання двійковокодованих десяткових чисел для однокристального МП 8080(КР580ВМ80А).
Мета: Вивчити алгоритми виконання операцій додавання та віднімання двійково\кодованих десяткоаих чисел для однокристального мікропроцесора Intel 8080 (КР580ВМ80А), набути практичних навиків складання та налагоджування програм з використанням цих алгоритмів.
Завдання
Виконати арифметичні операції над BCD числами 793 + 524 + 80 – 120. Дані ввести через регістрову пару D. Числа беззнакові. Результат записати в регістрову пару Н.
Короткі теоретичні відомості
Існують протиріччя між машинним представленням чисел (двійкова система числення) і представлення чисел у повсякденному житті (десяткові числа). Перетворення між ними у випадку великого об'єму вхідних даних і вихідних результатів веде до помітних витрат комп'ютерного часу. Тому, розроблені форми представлення чисел, в яких суміщаються двійкова і десяткова системи числення. Такі форми отримали загальну назву двійково-кодованого десяткового представлення (Binari-Coded Decimal) або BCD-кодування. У спакованому форматі, який часто називають BCD-представленням десяткових чисел, байт містить дві десяткові цифри. Молодша цифра займає праву тетраду (біти 3:0), старша - ліву тетраду (біти 7:4). Обидві цифри представляються своїм двійковим еквівалентами, тобто за допомогою 0 і 1 відповідно з вагами двійкових розрядів 8 / 4 / 2 / 1. Наприклад, десятковому числу 72 , відповідає BCD код 0111 0010 (упакований байт BCD чисел).
Набір команд арифметичних операцій чисел для однокристального мікропроцесора Intel 8080 (КР580ВМ80А) містить спеціальну команду двійково-десяткової корекції акумулятора DAA (Decimal Adjust Accumulator). , Для реалізації прикладних задач в МПС виконуються арифметичні операції з застосованням команди DAA. Наприклад, при виведенні опрацьованої інформації з МПС через дешифратор (К564ИД5) BCD коду в семисегментний на рідкокристалічний індикатор.
Арифметична операція додавання чисел в BCD кодах
Арифметична операцыя додавання чисел в BCD кодах виконується в два етапи:
1. Операнди додаються як двійкові числа;
2. Виконується корекція отриманого значення командою DAA.
Десяткова корекція вмісту акумулятора командою DAA відбувається в схемі двійково-десяткової корекції мікропроцесора КР580ВМ80А. 8-розрядний код акумулятора в цій схемі коректується за таким правилом:
- якщо молодша тетрада містить число, яке більше ніж 9, або встановлено прапорець переносу AC=1, то вміст акумулятора збільшується на 6;
- якщо після цього старша тетрада містить число, яке більше ніж 9, або встановлено прапорець CY=1, то до старшої тетради додається 6.
Суть корекції полягає додаванні при необхідності до двійково-десяткового коду тетради константи 6 (0110). Це пояснюється тим, що 4-розрядна двійкова тетрада має 16 можливих кодових комбінації (від 0000 до1111), що відповідають десятковим числам від 0 до 15, а при двійково-десятковому кодуванні чисел використовується всього 10 комбінацій (від 0000 до 1001) для представлення цифр від 0 до 9. тобто шість комбінацій, більших 1001 не використовуються. В результаті додавання одиниці до коду дев'ятки (1001) треба отримати код нуля (0000) в даній тетраді та одиницю переносу в наступну тетраду. Таким чином, якщо результат суми в тетраді буде більше 9, чому відповідає одиничне значення признаку переносу з даної тетради або код, більший 1001, то для одержання вірного двійково-десяткового коду до даної тетради додається коректуючий код шістки (0110). Наприклад, проміжний результат двійкового додавання BCD-чисел 79 і 39 має такий вигляд: 0111 1001
+ 0011 1001
1011 0010 (CY=1, AC=1)
Після виконання команди DAA : 0001 1000 (CY=1), отримали результат 118.
Арифметична операція віднімання чисел в BCD кодах
Використання набору арифметико-логічних команд МП КР580ВМ80А
використовується для виконання арифметичної операції віднімання двійково-кодованих десяткових чисел. Слід зауважити, для віднімання спеціальної команди корекції нема, тобто команда DAA не корегує результат двійкового віднімання. Тому операцію віднімання (X-Y) BCD-чисел необхідно виконувати в два етапи (операції виконуються в двійковому коді):
-утворити доповнюючий BCD-код від'ємника Y за формулою :
Yдоп = ((10k-1)-Y)+1), (1)
k-порядок BCD-чисел;
-додати отриманий двійково-десятковий код до зменшуваного : ( X+Yдоп ) ;
-скоригувати проміжний результат командою DAA.
Наприклад, для отримання доповнюючого десяткового коду дворозрядного BCD числа можна використати послідовність команд відповідно наведеної формули:
STC ; встановлення прапорця CY=1
MVI A,99h ; запис в акумулятор числа 99h
ACI 0 ; отримуєм еквівалент 100 в коді BCD
SUB M ; отримуєм доповнюючий BCD-код.
Так, для Y=63, в результаті виконання наведеної послідовності доповнюючий код буде Yдоп=(100-63)=37, а в BCD форматі 0011 0111.
Арифметична операція додавання/віднімання знакових чисел
в BCD кодах
В загальному випадку перед додаванням/відніманням необхідно проводити аналіз знаків операндів і формування при необхідності доповнюючих кодів операндів. Алгоритм додавання/віднімання BCD чисел зі знаком повинен обов'язково враховувати знаки операндів. Під знак в двійково-десятковому кодуванні відводиться старша тетрада: знаку "+" відповідає код 0000, знаку "-" код 1001. При перетворенні BCD-кодів з прямого в доповнюючий і навпаки змінюються лише цифрові розряди, знакові розряди зберігають своє значення. Однак, при безпосередньому виконанні арифметичних операцій над заковими розрядами поряд з цифровими виконуються операції додавання/віднімання і їх значення також підлягають десятковій корекції.
Наприклад, a) виконання операції над BCD-кодами 428 -316 =112,
доповнюючий BCD-код числа 316 після виконання (1) буде рівний 684:
0000 0100 0010 1000 ; +428
+1001 0110 1000 0100 ; Yдоп= -684
1001 1010 1010 1100
0110 0110 0110 ; DAA
1010 0001 0001 0010
0110 ; DAA
1 0000 0001 0001 0010
+ 1 1 2
б) виконання операції над BCD-кодами - 428 -316 = - 744,
доповнюючий BCD-код чисел 428 і 316 після виконання (1) буде віповідно рівний 572 і 684:
1001 0101 0111 0010 ; -572
+1001 0110 1000 0100 ; -316
10010 1011 1111 0110
0110 0110 0110 0000 ; DAA
11001 0010 0101 0110
- 2 5 6 , ; доповнюючий код.
Прямий код результату - (1000-256) = -744
Карта пам’яті
Код програми
Lab61.asm
org 100h
lxi h,300h
lxi b,308h
lxi d,793
call SAVE
lxi d,524
call SAVE
lxi d,80
call SAVE
lxi d,120
call SAVE
lxi h,9880h
shld 310h
hlt
SAVE:
mov m,e
inx h
mov m,d
inx h
push h
push b
lxi b,0
xchg
lxi d,-100
L100:
dad d
inr b
jc L100
dcr b
lxi d,100
dad d
lxi d,-10
L10:
dad d
inr c
jc L10
lxi d,10
dad d
dcr c
mov a,c
rrc
rrc
rrc
rrc
mov c,a
mov a,l
add c
mov c,a
pop h
mov m,b
inx h
mov m,c
inx h
mov b,h
mov c,l
pop h
ret
Lab62.asm
org 100h
lxi h,793h
shld 308h
lxi h,524h
shld 30ah
lxi h,80h
shld 30ch
lxi h,120h
shld 30eh
lxi h,9880h
shld 310h
lhld 308h
xchg
lhld 30ah
dad d
call KOR
shld 312h
xchg
lhld 30ch
dad d
call KOR
shld 314h
xchg
lhld 310h
call VIDN
shld 316h
hlt
VIDN:
mov a,l
add e
daa
jnc NEXT1
inr d
cmc
NEXT1:
mov l,a
mov a,h
add d
daa
mov h,a
ret
KOR:
ora 0h
mov a,l
daa
mov l,a
jnc NEXT
inr h
cmc
NEXT:
mov l,a
mov a,h
daa
mov h,a
ret
Lab61.prn
0100 ORG 100H ;зсув адрес
0100 210003 LXI H,300H ;поч. адреса збер. даних в DEC
0103 010803 LXI B,308H ;поч. адреса збер. даних в ВСD
0106 111903 LXI D,793 ;1 - дане
0109 CD2501 CALL SAVE ;підпрограма збереження і перетворення
010C 110C02 LXI D,524 ;2 - дане
010F CD2501 CALL SAVE ;підпрограма збереження і перетворення
0112 115000 LXI D,80 ;3 - дане
0115 CD2501 CALL SAVE ;підпрограма збереження і перетворення
0118 117800 LXI D,120 ;4 - дане
011B CD2501 CALL SAVE ;підпрограма збереження і перетворення
011E 218008 LXI H,880H ;4 - дане в доповнювальному DCD-форматі
0121 221003 SHLD 310H ;збереження
0124 76 HLT
SAVE:
0125 73 MOV M,E ;зберігаю DEC-число мол. біти
0126 23 INX H ;адреса +1
0127 72 MOV M,D ;зберігаю DEC-число ст. біти
0128 23 INX H ;адреса +1
0129 E5 PUSH H ;зберігаю адресу DEC-чисел в стеку
012A C5 PUSH B ;зберігаю адресу ВСВ-чисел в стеку
012B 010000 LXI B,0 ;В=0
012E EB XCHG ;HL <-> DE
012F 119CFF LXI D,-100 ;D = -100
L100: ;мітка циклу визначення кі-сті сотень
0132 19 DAD D ;віднімання 100 від DEC-числа
0133 04 INR B ;сотні +1
0134 DA3201 JC L100 ;якщо немає переносу - далі, є - на L100
0137 05 DCR B ;корекція результату
0138 116400 LXI D,100 ;D = 100
013B 19 DAD D ;корекція DEC-числа
013C 11F6FF LXI D,-10 ;D = -10
L10: ;мітка циклу визначення кі-сті десятків
013F 19 DAD D ;віднімання 10 від DEC-числа
0140 0C INR C ;десятки +1
0141 DA3F01 JC L10 ;якщо немає переносу - далі, є - на L10
0144 110A00 LXI D,10 ;D = 10
0147 19 DAD D ;корекція DEC-числа
0148 0D DCR C ;корекція результату
0149 79 MOV A,C ;перем. рез. в акумулятор
014A 0F RRC ;зсув вправо
014B 0F RRC ;зсув вправо
014C 0F RRC ;зсув вправо
014D 0F RRC ;зсув вправо
014E 4F MOV C,A ;переміщення в С
014F 7D MOV A,L ;переміщення кількості одиниць в А
0150 81 ADD C ;додавання десятків
0151 4F MOV C,A ;результат - BCD-число в ВС
0152 E1 POP H ;читання адреси збереження зі стеку
0153 70 MOV M,B ;збереження старшої частини ВСD-числа
0154 23 INX H ;адреса +1
0155 71 MOV M,C ;збереження молодшої частини ВСD-числа
0156 23 INX H ;адреса +1
0157 44 MOV B,H ;переміщення адреси в рег. пару В
0158 4D MOV C,L
0159 E1 POP H ;читання адреси наступного DEC-числа зі стеку
015A C9 RET ;повернення з підпрограми
_________________________________________________________________________________
Lab62.asm
0100 ORG 100H
0100 219307 LXI H,793H ;занесення початкових даних
0103 220803 SHLD 308H
0106 212405 LXI H,524H
0109 220A03 SHLD 30AH
010C 218000 LXI H,80H
010F 220C03 SHLD 30CH
0112 212001 LXI H,120H
0115 220E03 SHLD 30EH
0118 218098 LXI H,9880H
011B 221003 SHLD 310H
011E 2A0803 LHLD 308H ;читання першого ВСD-даного
0121 EB XCHG ;HL <-> DE
0122 2A0A03 LHLD 30AH ;читання другого ВСD-даного
0125 19 DAD D ;1-ше дане + 2-ге дане
0126 CD5001 CALL KOR ;десяткова корекція результату
0129 221203 SHLD 312H ;збереження проміжного результату
012C EB XCHG ;HL <-> DE
012D 2A0C03 LHLD 30CH ;читання третього ВСD-даного
0130 19 DAD D ;результат + 3-тє дане
0131 CD5001 CALL KOR ;десяткова корекція результату
0134 221403 SHLD 314H ;збереження проміжного результату
0137 EB XCHG ;HL <-> DE
0138 2A1003 LHLD 310H ;читання четвертого ВСD-даного в доповняльному коді
013B CD4201 CALL VIDN ;виклик підпрограми віднімання
013E 221603 SHLD 316H ;збереження кінцевого рензультату
0141 76 HLT
VIDN:
0142 7D MOV A,L ;завантаж мол. ч-ни в А
0143 83 ADD E ;додавання молю частин
0144 27 DAA ;десяткова корекція результату
0145 D24A01 JNC NEXT1 ;якщо переносу немає - на NEXT1
0148 14 INR D ;додавання кі-сті сотень
0149 3F CMC ;обнулення прапорця переносу
NEXT1:
014A 6F MOV L,A ;занесення рез. в L
014B 7C MOV A,H ;завантаж. ст. ч-ни в А
014C 82 ADD D ;додавання старших частин
014D 27 DAA ;десяткова корекція результату
014E 67 MOV H,A ;занесення результату в H
014F C9 RET
KOR:
0150 B0 ORA B :скидання регыстра ознак
0151 7D MOV A,L ;десяткова корекція одиниць і сотень
0152 27 DAA
0153 6F MOV L,A
0154 D25901 JNC NEXT ;якщо нема переносу - на NEXT
0157 24 INR H ;сотні +1
0158 3F CMC ;скидання прапорця переносу
NEXT:
0159 6F MOV L,A ;результат в L
015A 7C MOV A,H ;корекція лівої частини BCD-числа
015B 27 DAA
015C 67 MOV H,A
015D C9 RET ;вихід з підпрограми
___________________________________________________________________________
Результат виконання програми
Lab61.asm
80MATE (tm) CP/M-80 Emulator 1.2
Copyright (c) 1984 Vertex Systems Inc.
SN #007#
60K TPA
D:[cpm] d 61.com
DDT VERS 1.0
NEXT PC
0180 0100
-t112
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0000 S=0100 P=0100 LXI H,0300
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0300 S=0100 P=0103 LXI B,0308
C0Z0M0E0I0 A=00 B=0308 D=0000 H=0300 S=0100 P=0106 LXI D,0319
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0300 S=0100 P=0109 CALL 0125
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0300 S=00FE P=0125 MOV M,E
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0300 S=00FE P=0126 INX H
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0301 S=00FE P=0127 MOV M,D
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0301 S=00FE P=0128 INX H
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0302 S=00FE P=0129 PUSH H
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0302 S=00FC P=012A PUSH B
C0Z0M0E0I0 A=00 B=0308 D=0319 H=0302 S=00FA P=012B LXI B,0000
C0Z0M0E0I0 A=00 B=0000 D=0319 H=0302 S=00FA P=012E XCHG
C0Z0M0E0I0 A=00 B=0000 D=0302 H=0319 S=00FA P=012F LXI D,FF9C
C0Z0M0E0I0 A=00 B=0000 D=FF9C H=0319 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=00 B=0000 D=FF9C H=02B5 S=00FA P=0133 INR B
C1Z0M0E0I0 A=00 B=0100 D=FF9C H=02B5 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=00 B=0100 D=FF9C H=02B5 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=00 B=0100 D=FF9C H=0251 S=00FA P=0133 INR B
C1Z0M0E0I0 A=00 B=0200 D=FF9C H=0251 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=00 B=0200 D=FF9C H=0251 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=00 B=0200 D=FF9C H=01ED S=00FA P=0133 INR B
C1Z0M0E1I0 A=00 B=0300 D=FF9C H=01ED S=00FA P=0134 JC 0132
C1Z0M0E1I0 A=00 B=0300 D=FF9C H=01ED S=00FA P=0132 DAD D
C1Z0M0E1I0 A=00 B=0300 D=FF9C H=0189 S=00FA P=0133 INR B
C1Z0M0E0I0 A=00 B=0400 D=FF9C H=0189 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=00 B=0400 D=FF9C H=0189 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=00 B=0400 D=FF9C H=0125 S=00FA P=0133 INR B
C1Z0M0E1I0 A=00 B=0500 D=FF9C H=0125 S=00FA P=0134 JC 0132
C1Z0M0E1I0 A=00 B=0500 D=FF9C H=0125 S=00FA P=0132 DAD D
C1Z0M0E1I0 A=00 B=0500 D=FF9C H=00C1 S=00FA P=0133 INR B
C1Z0M0E1I0 A=00 B=0600 D=FF9C H=00C1 S=00FA P=0134 JC 0132
C1Z0M0E1I0 A=00 B=0600 D=FF9C H=00C1 S=00FA P=0132 DAD D
C1Z0M0E1I0 A=00 B=0600 D=FF9C H=005D S=00FA P=0133 INR B
C1Z0M0E0I0 A=00 B=0700 D=FF9C H=005D S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=00 B=0700 D=FF9C H=005D S=00FA P=0132 DAD D
C0Z0M0E0I0 A=00 B=0700 D=FF9C H=FFF9 S=00FA P=0133 INR B
C0Z0M0E0I0 A=00 B=0800 D=FF9C H=FFF9 S=00FA P=0134 JC 0132
C0Z0M0E0I0 A=00 B=0800 D=FF9C H=FFF9 S=00FA P=0137 DCR B
C0Z0M0E0I0 A=00 B=0700 D=FF9C H=FFF9 S=00FA P=0138 LXI D,0064
C0Z0M0E0I0 A=00 B=0700 D=0064 H=FFF9 S=00FA P=013B DAD D
C1Z0M0E0I0 A=00 B=0700 D=0064 H=005D S=00FA P=013C LXI D,FFF6
C1Z0M0E0I0 A=00 B=0700 D=FFF6 H=005D S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0700 D=FFF6 H=0053 S=00FA P=0140 INR C
C1Z0M0E0I0 A=00 B=0701 D=FFF6 H=0053 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=00 B=0701 D=FFF6 H=0053 S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0701 D=FFF6 H=0049 S=00FA P=0140 INR C
C1Z0M0E0I0 A=00 B=0702 D=FFF6 H=0049 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=00 B=0702 D=FFF6 H=0049 S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0702 D=FFF6 H=003F S=00FA P=0140 INR C
C1Z0M0E1I0 A=00 B=0703 D=FFF6 H=003F S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=00 B=0703 D=FFF6 H=003F S=00FA P=013F DAD D
C1Z0M0E1I0 A=00 B=0703 D=FFF6 H=0035 S=00FA P=0140 INR C
C1Z0M0E0I0 A=00 B=0704 D=FFF6 H=0035 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=00 B=0704 D=FFF6 H=0035 S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0704 D=FFF6 H=002B S=00FA P=0140 INR C
C1Z0M0E1I0 A=00 B=0705 D=FFF6 H=002B S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=00 B=0705 D=FFF6 H=002B S=00FA P=013F DAD D
C1Z0M0E1I0 A=00 B=0705 D=FFF6 H=0021 S=00FA P=0140 INR C
C1Z0M0E1I0 A=00 B=0706 D=FFF6 H=0021 S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=00 B=0706 D=FFF6 H=0021 S=00FA P=013F DAD D
C1Z0M0E1I0 A=00 B=0706 D=FFF6 H=0017 S=00FA P=0140 INR C
C1Z0M0E0I0 A=00 B=0707 D=FFF6 H=0017 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=00 B=0707 D=FFF6 H=0017 S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0707 D=FFF6 H=000D S=00FA P=0140 INR C
C1Z0M0E0I0 A=00 B=0708 D=FFF6 H=000D S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=00 B=0708 D=FFF6 H=000D S=00FA P=013F DAD D
C1Z0M0E0I0 A=00 B=0708 D=FFF6 H=0003 S=00FA P=0140 INR C
C1Z0M0E1I0 A=00 B=0709 D=FFF6 H=0003 S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=00 B=0709 D=FFF6 H=0003 S=00FA P=013F DAD D
C0Z0M0E1I0 A=00 B=0709 D=FFF6 H=FFF9 S=00FA P=0140 INR C
C0Z0M0E1I0 A=00 B=070A D=FFF6 H=FFF9 S=00FA P=0141 JC 013F
C0Z0M0E1I0 A=00 B=070A D=FFF6 H=FFF9 S=00FA P=0144 LXI D,000A
C0Z0M0E1I0 A=00 B=070A D=000A H=FFF9 S=00FA P=0147 DAD D
C1Z0M0E1I0 A=00 B=070A D=000A H=0003 S=00FA P=0148 DCR C
C1Z0M0E1I0 A=00 B=0709 D=000A H=0003 S=00FA P=0149 MOV A,C
C1Z0M0E1I0 A=09 B=0709 D=000A H=0003 S=00FA P=014A RRC
C1Z0M0E1I0 A=84 B=0709 D=000A H=0003 S=00FA P=014B RRC
C0Z0M0E1I0 A=42 B=0709 D=000A H=0003 S=00FA P=014C RRC
C0Z0M0E1I0 A=21 B=0709 D=000A H=0003 S=00FA P=014D RRC
C1Z0M0E1I0 A=90 B=0709 D=000A H=0003 S=00FA P=014E MOV C,A
C1Z0M0E1I0 A=90 B=0790 D=000A H=0003 S=00FA P=014F MOV A,L
C1Z0M0E1I0 A=03 B=0790 D=000A H=0003 S=00FA P=0150 ADD C
C0Z0M1E1I0 A=93 B=0790 D=000A H=0003 S=00FA P=0151 MOV C,A
C0Z0M1E1I0 A=93 B=0793 D=000A H=0003 S=00FA P=0152 POP H
C0Z0M1E1I0 A=93 B=0793 D=000A H=0308 S=00FC P=0153 MOV M,B
C0Z0M1E1I0 A=93 B=0793 D=000A H=0308 S=00FC P=0154 INX H
C0Z0M1E1I0 A=93 B=0793 D=000A H=0309 S=00FC P=0155 MOV M,C
C0Z0M1E1I0 A=93 B=0793 D=000A H=0309 S=00FC P=0156 INX H
C0Z0M1E1I0 A=93 B=0793 D=000A H=030A S=00FC P=0157 MOV B,H
C0Z0M1E1I0 A=93 B=0393 D=000A H=030A S=00FC P=0158 MOV C,L
C0Z0M1E1I0 A=93 B=030A D=000A H=030A S=00FC P=0159 POP H
C0Z0M1E1I0 A=93 B=030A D=000A H=0302 S=00FE P=015A RET
C0Z0M1E1I0 A=93 B=030A D=000A H=0302 S=0100 P=010C LXI D,020C
C0Z0M1E1I0 A=93 B=030A D=020C H=0302 S=0100 P=010F CALL 0125
C0Z0M1E1I0 A=93 B=030A D=020C H=0302 S=00FE P=0125 MOV M,E
C0Z0M1E1I0 A=93 B=030A D=020C H=0302 S=00FE P=0126 INX H
C0Z0M1E1I0 A=93 B=030A D=020C H=0303 S=00FE P=0127 MOV M,D
C0Z0M1E1I0 A=93 B=030A D=020C H=0303 S=00FE P=0128 INX H
C0Z0M1E1I0 A=93 B=030A D=020C H=0304 S=00FE P=0129 PUSH H
C0Z0M1E1I0 A=93 B=030A D=020C H=0304 S=00FC P=012A PUSH B
C0Z0M1E1I0 A=93 B=030A D=020C H=0304 S=00FA P=012B LXI B,0000
C0Z0M1E1I0 A=93 B=0000 D=020C H=0304 S=00FA P=012E XCHG
C0Z0M1E1I0 A=93 B=0000 D=0304 H=020C S=00FA P=012F LXI D,FF9C
C0Z0M1E1I0 A=93 B=0000 D=FF9C H=020C S=00FA P=0132 DAD D
C1Z0M1E1I0 A=93 B=0000 D=FF9C H=01A8 S=00FA P=0133 INR B
C1Z0M0E0I0 A=93 B=0100 D=FF9C H=01A8 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=93 B=0100 D=FF9C H=01A8 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=93 B=0100 D=FF9C H=0144 S=00FA P=0133 INR B
C1Z0M0E0I0 A=93 B=0200 D=FF9C H=0144 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=93 B=0200 D=FF9C H=0144 S=00FA P=0132 DAD D
C1Z0M0E0I0 A=93 B=0200 D=FF9C H=00E0 S=00FA P=0133 INR B
C1Z0M0E1I0 A=93 B=0300 D=FF9C H=00E0 S=00FA P=0134 JC 0132
C1Z0M0E1I0 A=93 B=0300 D=FF9C H=00E0 S=00FA P=0132 DAD D
C1Z0M0E1I0 A=93 B=0300 D=FF9C H=007C S=00FA P=0133 INR B
C1Z0M0E0I0 A=93 B=0400 D=FF9C H=007C S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=93 B=0400 D=FF9C H=007C S=00FA P=0132 DAD D
C1Z0M0E0I0 A=93 B=0400 D=FF9C H=0018 S=00FA P=0133 INR B
C1Z0M0E1I0 A=93 B=0500 D=FF9C H=0018 S=00FA P=0134 JC 0132
C1Z0M0E1I0 A=93 B=0500 D=FF9C H=0018 S=00FA P=0132 DAD D
C0Z0M0E1I0 A=93 B=0500 D=FF9C H=FFB4 S=00FA P=0133 INR B
C0Z0M0E1I0 A=93 B=0600 D=FF9C H=FFB4 S=00FA P=0134 JC 0132
C0Z0M0E1I0 A=93 B=0600 D=FF9C H=FFB4 S=00FA P=0137 DCR B
C0Z0M0E1I0 A=93 B=0500 D=FF9C H=FFB4 S=00FA P=0138 LXI D,0064
C0Z0M0E1I0 A=93 B=0500 D=0064 H=FFB4 S=00FA P=013B DAD D
C1Z0M0E1I0 A=93 B=0500 D=0064 H=0018 S=00FA P=013C LXI D,FFF6
C1Z0M0E1I0 A=93 B=0500 D=FFF6 H=0018 S=00FA P=013F DAD D
C1Z0M0E1I0 A=93 B=0500 D=FFF6 H=000E S=00FA P=0140 INR C
C1Z0M0E0I0 A=93 B=0501 D=FFF6 H=000E S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=93 B=0501 D=FFF6 H=000E S=00FA P=013F DAD D
C1Z0M0E0I0 A=93 B=0501 D=FFF6 H=0004 S=00FA P=0140 INR C
C1Z0M0E0I0 A=93 B=0502 D=FFF6 H=0004 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=93 B=0502 D=FFF6 H=0004 S=00FA P=013F DAD D
C0Z0M0E0I0 A=93 B=0502 D=FFF6 H=FFFA S=00FA P=0140 INR C
C0Z0M0E1I0 A=93 B=0503 D=FFF6 H=FFFA S=00FA P=0141 JC 013F
C0Z0M0E1I0 A=93 B=0503 D=FFF6 H=FFFA S=00FA P=0144 LXI D,000A
C0Z0M0E1I0 A=93 B=0503 D=000A H=FFFA S=00FA P=0147 DAD D
C1Z0M0E1I0 A=93 B=0503 D=000A H=0004 S=00FA P=0148 DCR C
C1Z0M0E0I0 A=93 B=0502 D=000A H=0004 S=00FA P=0149 MOV A,C
C1Z0M0E0I0 A=02 B=0502 D=000A H=0004 S=00FA P=014A RRC
C0Z0M0E0I0 A=01 B=0502 D=000A H=0004 S=00FA P=014B RRC
C1Z0M0E0I0 A=80 B=0502 D=000A H=0004 S=00FA P=014C RRC
C0Z0M0E0I0 A=40 B=0502 D=000A H=0004 S=00FA P=014D RRC
C0Z0M0E0I0 A=20 B=0502 D=000A H=0004 S=00FA P=014E MOV C,A
C0Z0M0E0I0 A=20 B=0520 D=000A H=0004 S=00FA P=014F MOV A,L
C0Z0M0E0I0 A=04 B=0520 D=000A H=0004 S=00FA P=0150 ADD C
C0Z0M0E1I0 A=24 B=0520 D=000A H=0004 S=00FA P=0151 MOV C,A
C0Z0M0E1I0 A=24 B=0524 D=000A H=0004 S=00FA P=0152 POP H
C0Z0M0E1I0 A=24 B=0524 D=000A H=030A S=00FC P=0153 MOV M,B
C0Z0M0E1I0 A=24 B=0524 D=000A H=030A S=00FC P=0154 INX H
C0Z0M0E1I0 A=24 B=0524 D=000A H=030B S=00FC P=0155 MOV M,C
C0Z0M0E1I0 A=24 B=0524 D=000A H=030B S=00FC P=0156 INX H
C0Z0M0E1I0 A=24 B=0524 D=000A H=030C S=00FC P=0157 MOV B,H
C0Z0M0E1I0 A=24 B=0324 D=000A H=030C S=00FC P=0158 MOV C,L
C0Z0M0E1I0 A=24 B=030C D=000A H=030C S=00FC P=0159 POP H
C0Z0M0E1I0 A=24 B=030C D=000A H=0304 S=00FE P=015A RET
C0Z0M0E1I0 A=24 B=030C D=000A H=0304 S=0100 P=0112 LXI D,0050
C0Z0M0E1I0 A=24 B=030C D=0050 H=0304 S=0100 P=0115 CALL 0125
C0Z0M0E1I0 A=24 B=030C D=0050 H=0304 S=00FE P=0125 MOV M,E
C0Z0M0E1I0 A=24 B=030C D=0050 H=0304 S=00FE P=0126 INX H
C0Z0M0E1I0 A=24 B=030C D=0050 H=0305 S=00FE P=0127 MOV M,D
C0Z0M0E1I0 A=24 B=030C D=0050 H=0305 S=00FE P=0128 INX H
C0Z0M0E1I0 A=24 B=030C D=0050 H=0306 S=00FE P=0129 PUSH H
C0Z0M0E1I0 A=24 B=030C D=0050 H=0306 S=00FC P=012A PUSH B
C0Z0M0E1I0 A=24 B=030C D=0050 H=0306 S=00FA P=012B LXI B,0000
C0Z0M0E1I0 A=24 B=0000 D=0050 H=0306 S=00FA P=012E XCHG
C0Z0M0E1I0 A=24 B=0000 D=0306 H=0050 S=00FA P=012F LXI D,FF9C
C0Z0M0E1I0 A=24 B=0000 D=FF9C H=0050 S=00FA P=0132 DAD D
C0Z0M0E1I0 A=24 B=0000 D=FF9C H=FFEC S=00FA P=0133 INR B
C0Z0M0E0I0 A=24 B=0100 D=FF9C H=FFEC S=00FA P=0134 JC 0132
C0Z0M0E0I0 A=24 B=0100 D=FF9C H=FFEC S=00FA P=0137 DCR B
C0Z1M0E1I0 A=24 B=0000 D=FF9C H=FFEC S=00FA P=0138 LXI D,0064
C0Z1M0E1I0 A=24 B=0000 D=0064 H=FFEC S=00FA P=013B DAD D
C1Z1M0E1I0 A=24 B=0000 D=0064 H=0050 S=00FA P=013C LXI D,FFF6
C1Z1M0E1I0 A=24 B=0000 D=FFF6 H=0050 S=00FA P=013F DAD D
C1Z1M0E1I0 A=24 B=0000 D=FFF6 H=0046 S=00FA P=0140 INR C
C1Z0M0E0I0 A=24 B=0001 D=FFF6 H=0046 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=24 B=0001 D=FFF6 H=0046 S=00FA P=013F DAD D
C1Z0M0E0I0 A=24 B=0001 D=FFF6 H=003C S=00FA P=0140 INR C
C1Z0M0E0I0 A=24 B=0002 D=FFF6 H=003C S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=24 B=0002 D=FFF6 H=003C S=00FA P=013F DAD D
C1Z0M0E0I0 A=24 B=0002 D=FFF6 H=0032 S=00FA P=0140 INR C
C1Z0M0E1I0 A=24 B=0003 D=FFF6 H=0032 S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=24 B=0003 D=FFF6 H=0032 S=00FA P=013F DAD D
C1Z0M0E1I0 A=24 B=0003 D=FFF6 H=0028 S=00FA P=0140 INR C
C1Z0M0E0I0 A=24 B=0004 D=FFF6 H=0028 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=24 B=0004 D=FFF6 H=0028 S=00FA P=013F DAD D
C1Z0M0E0I0 A=24 B=0004 D=FFF6 H=001E S=00FA P=0140 INR C
C1Z0M0E1I0 A=24 B=0005 D=FFF6 H=001E S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=24 B=0005 D=FFF6 H=001E S=00FA P=013F DAD D
C1Z0M0E1I0 A=24 B=0005 D=FFF6 H=0014 S=00FA P=0140 INR C
C1Z0M0E1I0 A=24 B=0006 D=FFF6 H=0014 S=00FA P=0141 JC 013F
C1Z0M0E1I0 A=24 B=0006 D=FFF6 H=0014 S=00FA P=013F DAD D
C1Z0M0E1I0 A=24 B=0006 D=FFF6 H=000A S=00FA P=0140 INR C
C1Z0M0E0I0 A=24 B=0007 D=FFF6 H=000A S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=24 B=0007 D=FFF6 H=000A S=00FA P=013F DAD D
C1Z0M0E0I0 A=24 B=0007 D=FFF6 H=0000 S=00FA P=0140 INR C
C1Z0M0E0I0 A=24 B=0008 D=FFF6 H=0000 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=24 B=0008 D=FFF6 H=0000 S=00FA P=013F DAD D
C0Z0M0E0I0 A=24 B=0008 D=FFF6 H=FFF6 S=00FA P=0140 INR C
C0Z0M0E1I0 A=24 B=0009 D=FFF6 H=FFF6 S=00FA P=0141 JC 013F
C0Z0M0E1I0 A=24 B=0009 D=FFF6 H=FFF6 S=00FA P=0144 LXI D,000A
C0Z0M0E1I0 A=24 B=0009 D=000A H=FFF6 S=00FA P=0147 DAD D
C1Z0M0E1I0 A=24 B=0009 D=000A H=0000 S=00FA P=0148 DCR C
C1Z0M0E0I0 A=24 B=0008 D=000A H=0000 S=00FA P=0149 MOV A,C
C1Z0M0E0I0 A=08 B=0008 D=000A H=0000 S=00FA P=014A RRC
C0Z0M0E0I0 A=04 B=0008 D=000A H=0000 S=00FA P=014B RRC
C0Z0M0E0I0 A=02 B=0008 D=000A H=0000 S=00FA P=014C RRC
C0Z0M0E0I0 A=01 B=0008 D=000A H=0000 S=00FA P=014D RRC
C1Z0M0E0I0 A=80 B=0008 D=000A H=0000 S=00FA P=014E MOV C,A
C1Z0M0E0I0 A=80 B=0080 D=000A H=0000 S=00FA P=014F MOV A,L
C1Z0M0E0I0 A=00 B=0080 D=000A H=0000 S=00FA P=0150 ADD C
C0Z0M1E0I0 A=80 B=0080 D=000A H=0000 S=00FA P=0151 MOV C,A
C0Z0M1E0I0 A=80 B=0080 D=000A H=0000 S=00FA P=0152 POP H
C0Z0M1E0I0 A=80 B=0080 D=000A H=030C S=00FC P=0153 MOV M,B
C0Z0M1E0I0 A=80 B=0080 D=000A H=030C S=00FC P=0154 INX H
C0Z0M1E0I0 A=80 B=0080 D=000A H=030D S=00FC P=0155 MOV M,C
C0Z0M1E0I0 A=80 B=0080 D=000A H=030D S=00FC P=0156 INX H
C0Z0M1E0I0 A=80 B=0080 D=000A H=030E S=00FC P=0157 MOV B,H
C0Z0M1E0I0 A=80 B=0380 D=000A H=030E S=00FC P=0158 MOV C,L
C0Z0M1E0I0 A=80 B=030E D=000A H=030E S=00FC P=0159 POP H
C0Z0M1E0I0 A=80 B=030E D=000A H=0306 S=00FE P=015A RET
C0Z0M1E0I0 A=80 B=030E D=000A H=0306 S=0100 P=0118 LXI D,0078
C0Z0M1E0I0 A=80 B=030E D=0078 H=0306 S=0100 P=011B CALL 0125
C0Z0M1E0I0 A=80 B=030E D=0078 H=0306 S=00FE P=0125 MOV M,E
C0Z0M1E0I0 A=80 B=030E D=0078 H=0306 S=00FE P=0126 INX H
C0Z0M1E0I0 A=80 B=030E D=0078 H=0307 S=00FE P=0127 MOV M,D
C0Z0M1E0I0 A=80 B=030E D=0078 H=0307 S=00FE P=0128 INX H
C0Z0M1E0I0 A=80 B=030E D=0078 H=0308 S=00FE P=0129 PUSH H
C0Z0M1E0I0 A=80 B=030E D=0078 H=0308 S=00FC P=012A PUSH B
C0Z0M1E0I0 A=80 B=030E D=0078 H=0308 S=00FA P=012B LXI B,0000
C0Z0M1E0I0 A=80 B=0000 D=0078 H=0308 S=00FA P=012E XCHG
C0Z0M1E0I0 A=80 B=0000 D=0308 H=0078 S=00FA P=012F LXI D,FF9C
C0Z0M1E0I0 A=80 B=0000 D=FF9C H=0078 S=00FA P=0132 DAD D
C1Z0M1E0I0 A=80 B=0000 D=FF9C H=0014 S=00FA P=0133 INR B
C1Z0M0E0I0 A=80 B=0100 D=FF9C H=0014 S=00FA P=0134 JC 0132
C1Z0M0E0I0 A=80 B=0100 D=FF9C H=0014 S=00FA P=0132 DAD D
C0Z0M0E0I0 A=80 B=0100 D=FF9C H=FFB0 S=00FA P=0133 INR B
C0Z0M0E0I0 A=80 B=0200 D=FF9C H=FFB0 S=00FA P=0134 JC 0132
C0Z0M0E0I0 A=80 B=0200 D=FF9C H=FFB0 S=00FA P=0137 DCR B
C0Z0M0E0I0 A=80 B=0100 D=FF9C H=FFB0 S=00FA P=0138 LXI D,0064
C0Z0M0E0I0 A=80 B=0100 D=0064 H=FFB0 S=00FA P=013B DAD D
C1Z0M0E0I0 A=80 B=0100 D=0064 H=0014 S=00FA P=013C LXI D,FFF6
C1Z0M0E0I0 A=80 B=0100 D=FFF6 H=0014 S=00FA P=013F DAD D
C1Z0M0E0I0 A=80 B=0100 D=FFF6 H=000A S=00FA P=0140 INR C
C1Z0M0E0I0 A=80 B=0101 D=FFF6 H=000A S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=80 B=0101 D=FFF6 H=000A S=00FA P=013F DAD D
C1Z0M0E0I0 A=80 B=0101 D=FFF6 H=0000 S=00FA P=0140 INR C
C1Z0M0E0I0 A=80 B=0102 D=FFF6 H=0000 S=00FA P=0141 JC 013F
C1Z0M0E0I0 A=80 B=0102 D=FFF6 H=0000 S=00FA P=013F DAD D
C0Z0M0E0I0 A=80 B=0102 D=FFF6 H=FFF6 S=00FA P=0140 INR C
C0Z0M0E1I0 A=80 B=0103 D=FFF6 H=FFF6 S=00FA P=0141 JC 013F
C0Z0M0E1I0 A=80 B=0103 D=FFF6 H=FFF6 S=00FA P=0144 LXI D,000A
C0Z0M0E1I0 A=80 B=0103 D=000A H=FFF6 S=00FA P=0147 DAD D
C1Z0M0E1I0 A=80 B=0103 D=000A H=0000 S=00FA P=0148 DCR C
C1Z0M0E0I0 A=80 B=0102 D=000A H=0000 S=00FA P=0149 MOV A,C
C1Z0M0E0I0 A=02 B=0102 D=000A H=0000 S=00FA P=014A RRC
C0Z0M0E0I0 A=01 B=0102 D=000A H=0000 S=00FA P=014B RRC
C1Z0M0E0I0 A=80 B=0102 D=000A H=0000 S=00FA P=014C RRC
C0Z0M0E0I0 A=40 B=0102 D=000A H=0000 S=00FA P=014D RRC
C0Z0M0E0I0 A=20 B=0102 D=000A H=0000 S=00FA P=014E MOV C,A
C0Z0M0E0I0 A=20 B=0120 D=000A H=0000 S=00FA P=014F MOV A,L
C0Z0M0E0I0 A=00 B=0120 D=000A H=0000 S=00FA P=0150 ADD C
C0Z0M0E0I0 A=20 B=0120 D=000A H=0000 S=00FA P=0151 MOV C,A
C0Z0M0E0I0 A=20 B=0120 D=000A H=0000 S=00FA P=0152 POP H
C0Z0M0E0I0 A=20 B=0120 D=000A H=030E S=00FC P=0153 MOV M,B
C0Z0M0E0I0 A=20 B=0120 D=000A H=030E S=00FC P=0154 INX H
C0Z0M0E0I0 A=20 B=0120 D=000A H=030F S=00FC P=0155 MOV M,C
C0Z0M0E0I0 A=20 B=0120 D=000A H=030F S=00FC P=0156 INX H
C0Z0M0E0I0 A=20 B=0120 D=000A H=0310 S=00FC P=0157 MOV B,H
C0Z0M0E0I0 A=20 B=0320 D=000A H=0310 S=00FC P=0158 MOV C,L
C0Z0M0E0I0 A=20 B=0310 D=000A H=0310 S=00FC P=0159 POP H
C0Z0M0E0I0 A=20 B=0310 D=000A H=0308 S=00FE P=015A RET
C0Z0M0E0I0 A=20 B=0310 D=000A H=0308 S=0100 P=011E LXI H,9880
C0Z0M0E0I0 A=20 B=0310 D=000A H=9880 S=0100 P=0121 SHLD 0310*0124
-d300,311
0300 19 03 0C 02 50 00 78 00 07 93 05 24 00 80 01 20 ....P.x....$...
0310 80 98 ..
-t
C0Z0M0E0I0 A=20 B=0310 D=000A H=9880 S=0100 P=0124 HLT
*Execution halted
Lab62.asm
80MATE (tm) CP/M-80 Emulator 1.2
Copyright (c) 1984 Vertex Systems Inc.
SN #007#
60K TPA
D:[cpm] d 62.com
DDT VERS 1.0
NEXT PC
0180 0100
-t3b
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0000 S=0100 P=0100 LXI H,0793
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0793 S=0100 P=0103 SHLD 0308
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0793 S=0100 P=0106 LXI H,0524
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0524 S=0100 P=0109 SHLD 030A
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0524 S=0100 P=010C LXI H,0080
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0080 S=0100 P=010F SHLD 030C
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0080 S=0100 P=0112 LXI H,0120
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0120 S=0100 P=0115 SHLD 030E
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0120 S=0100 P=0118 LXI H,9880
C0Z0M0E0I0 A=00 B=0000 D=0000 H=9880 S=0100 P=011B SHLD 0310
C0Z0M0E0I0 A=00 B=0000 D=0000 H=9880 S=0100 P=011E LHLD 0308
C0Z0M0E0I0 A=00 B=0000 D=0000 H=0793 S=0100 P=0121 XCHG
C0Z0M0E0I0 A=00 B=0000 D=0793 H=0000 S=0100 P=0122 LHLD 030A
C0Z0M0E0I0 A=00 B=0000 D=0793 H=0524 S=0100 P=0125 DAD D
C0Z0M0E0I0 A=00 B=0000 D=0793 H=0CB7 S=0100 P=0126 CALL 0150
C0Z0M0E0I0 A=00 B=0000 D=0793 H=0CB7 S=00FE P=0150 ORA B
C0Z1M0E1I0 A=00 B=0000 D=0793 H=0CB7 S=00FE P=0151 MOV A,L
C0Z1M0E1I0 A=B7 B=0000 D=0793 H=0CB7 S=00FE P=0152 DAA
C1Z0M0E1I0 A=17 B=0000 D=0793 H=0CB7 S=00FE P=0153 MOV L,A
C1Z0M0E1I0 A=17 B=0000 D=0793 H=0C17 S=00FE P=0154 JNC 0159
C1Z0M0E1I0 A=17 B=0000 D=0793 H=0C17 S=00FE P=0157 INR H
C1Z0M0E0I0 A=17 B=0000 D=0793 H=0D17 S=00FE P=0158 CMC
C0Z0M0E0I0 A=17 B=0000 D=0793 H=0D17 S=00FE P=0159 MOV L,A
C0Z0M0E0I0 A=17 B=0000 D=0793 H=0D17 S=00FE P=015A MOV A,H
C0Z0M0E0I0 A=0D B=0000 D=0793 H=0D17 S=00FE P=015B DAA
C0Z0M0E0I1 A=13 B=0000 D=0793 H=0D17 S=00FE P=015C MOV H,A
C0Z0M0E0I1 A=13 B=0000 D=0793 H=1317 S=00FE P=015D RET
C0Z0M0E0I1 A=13 B=0000 D=0793 H=1317 S=0100 P=0129 SHLD 0312
C0Z0M0E0I1 A=13 B=0000 D=0793 H=1317 S=0100 P=012C XCHG
C0Z0M0E0I1 A=13 B=0000 D=1317 H=0793 S=0100 P=012D LHLD 030C
C0Z0M0E0I1 A=13 B=0000 D=1317 H=0080 S=0100 P=0130 DAD D
C0Z0M0E0I1 A=13 B=0000 D=1317 H=1397 S=0100 P=0131 CALL 0150
C0Z0M0E0I1 A=13 B=0000 D=1317 H=1397 S=00FE P=0150 ORA B
C0Z0M0E0I0 A=13 B=0000 D=1317 H=1397 S=00FE P=0151 MOV A,L
C0Z0M0E0I0 A=97 B=0000 D=1317 H=1397 S=00FE P=0152 DAA
C0Z0M1E0I0 A=97 B=0000 D=1317 H=1397 S=00FE P=0153 MOV L,A
C0Z0M1E0I0 A=97 B=0000 D=1317 H=1397 S=00FE P=0154 JNC 0159
C0Z0M1E0I0 A=97 B=0000 D=1317 H=1397 S=00FE P=0159 MOV L,A
C0Z0M1E0I0 A=97 B=0000 D=1317 H=1397 S=00FE P=015A MOV A,H
C0Z0M1E0I0 A=13 B=0000 D=1317 H=1397 S=00FE P=015B DAA
C0Z0M0E0I0 A=13 B=0000 D=1317 H=1397 S=00FE P=015C MOV H,A
C0Z0M0E0I0 A=13 B=0000 D=1317 H=1397 S=00FE P=015D RET
C0Z0M0E0I0 A=13 B=0000 D=1317 H=1397 S=0100 P=0134 SHLD 0314
C0Z0M0E0I0 A=13 B=0000 D=1317 H=1397 S=0100 P=0137 XCHG
C0Z0M0E0I0 A=13 B=0000 D=1397 H=1317 S=0100 P=0138 LHLD 0310
C0Z0M0E0I0 A=13 B=0000 D=1397 H=9880 S=0100 P=013B CALL 0142
C0Z0M0E0I0 A=13 B=0000 D=1397 H=9880 S=00FE P=0142 MOV A,L
C0Z0M0E0I0 A=80 B=0000 D=1397 H=9880 S=00FE P=0143 ADD E
C1Z0M0E1I0 A=17 B=0000 D=1397 H=9880 S=00FE P=0144 DAA
C1Z0M0E1I0 A=77 B=0000 D=1397 H=9880 S=00FE P=0145 JNC 014A
C1Z0M0E1I0 A=77 B=0000 D=1397 H=9880 S=00FE P=0148 INR D
C1Z0M0E1I0 A=77 B=0000 D=1497 H=9880 S=00FE P=0149 CMC
C0Z0M0E1I0 A=77 B=0000 D=1497 H=9880 S=00FE P=014A MOV L,A
C0Z0M0E1I0 A=77 B=0000 D=1497 H=9877 S=00FE P=014B MOV A,H
C0Z0M0E1I0 A=98 B=0000 D=1497 H=9877 S=00FE P=014C ADD D
C0Z0M1E1I0 A=AC B=0000 D=1497 H=9877 S=00FE P=014D DAA
C1Z0M0E1I1 A=12 B=0000 D=1497 H=9877 S=00FE P=014E MOV H,A
C1Z0M0E1I1 A=12 B=0000 D=1497 H=1277 S=00FE P=014F RET
C1Z0M0E1I1 A=12 B=0000 D=1497 H=1277 S=0100 P=013E SHLD 0316*0141
-d310,317
0310 80 98 17 13 97 13 77 12 ......w.
-g
*Execution halted
Висновки
На цій лабораторній роботі я вивчила алгоритми додавання та віднімання двійковокодованих десяткових чисел для однокристального МП 8080(КР580ВМ80А), написала програму, яка виконує операції над BCD-числами.