
- •Робота з компілятором ср/м
- •Інструментальні засоби динамічного відлагодження програм
- •Програмні засоби організації програми
- •Текст програми
- •Результати виконання програми
- •Міністерство освіти та науки України Національний університет “Львівська політехніка” Інститут комп’ютерних наук та інформаційних технологій
- •Способи адресації операндів і команди пересилання даних однокристального мп кр580
- •Теоретичні відомості Способи адресації в мп кр580
- •2.2. Команди пересилання даних мп кр580
- •Наприклад :
- •2.3. Стек і команди роботи зі стеком в однокристальному мп кр580
- •Карта пам'яті
- •Текст програми
- •Результати виконання програми
- •Теоретичні відомості
- •2. Короткі теоретичні відомості
- •Карта пам'яті
- •Текст програми
- •Результати виконання програми
- •Теоретичні відомості
- •2. 6. С умова адреси - умовний виклик підпрограми.
- •2. 8. R умова - умовне повернення з підпрограми.
- •2. 10. Організація підпрограм.
- •Карта пам’яті Текст програми
- •Результати виконання програми:
- •Теоретичні відомості
- •Арифметична операція множення
- •Арифметична операція ділення
- •Словесний опис алгоритму
- •Приклад множення чисел
- •Запис початкових даних
- •Додання
- •Другого множника
- •Зсув першого множника
- •Результати виконання програми
- •Міністерство освіти та науки України Національний університет “Львівська політехніка” Інститут комп’ютерних наук та інформаційних технологій
- •Теоретичні відомості
- •Арифметична операція додавання чисел в bcd кодах
- •2.2 Арифметична операція віднімання чисел в bcd кодах
- •2.3 Арифметична операція додавання/віднімання знакових чисел в bcd кодах
- •Перетворення чисел двійково-десяткового формату в двійковий формат і з двійкового формату в bcd-коди.
- •Карта пам'яті
- •Код програми
- •Зміст файлу lr6.Prn
- •Результати виконання програми
- •Теоретичні відомості
- •Додавання та віднімання багаторозрядних чисел цілого типу
- •Множення та ділення багаторозрядних чисел цілого типу
- •Арифметичні операції над дійсними числами
- •3.1 Арифметичні операції над числами в форматі з фіксованою комою
- •Арифметичні операції над числами в форматі з плаваючою комою
- •Код програми
- •Зміст файлу lr7.Prn
- •Результати виконання програми
Код програми
org 100h
lxi H, 301
mov A, H
sta 200h
mov A, L
sta 201h
xchg
mvi A, 210
sta 202h
mvi A, 31h
sta 203h
mvi A, 6Fh
sta 204h
mvi A, 91
sta 205h
mvi A, 117
sta 206h
mvi C, 1
mvi B, 8
checkBit:
lda 202h
ana C
stc
cmc
mov A, C
ral
mov C, A
jz ralE
dad D
ralE:
stc
cmc
mov A, E
ral
mov E, A
mov A, D
mvi D, 0
jnc ralD
mvi D, 1
ralD:
stc
cmc
ral
add D
mov D, A
dcr B
jnz checkBit
mov A, H
sta 207h
mov A, L
sta 208h
lda 203h
cma
mov D, A
lda 204h
cma
inrA
mov E, A
mvi H, 255
mvi L, 255
dad D
mvi D, 0
lda 205h
mov E, A
mvi A, 0
ral
mvi A, 0
divN:
dad D
inr A
jnc divN
dcr A
sta 209h
mov E, A
lda 207h
cma
mov H, A
lda 208h
cma
mov L, A
inr L
dad D
mov A, H
sta 20ah
mov A, L
sta 20bh
lda 206h
mov E, A
dad D
mov A, H
cma
sta 20ch
mov A, L
cma
inr A
sta 20dh
nop
hlt
Зміст файлу lr7.Prn
0100 ORG 100h ;перехід на початкову адресу 100h
0100 212D01 LXI H, 301 ;
0103 7C MOV A, H ;
0104 320002 STA 200H ;
0107 7D MOV A, L ;
0108 320102 STA 201H
010B EB XCHG
010C 3ED2 MVI A, 210
010E 320202 STA 202H
0111 3E31 MVI A, 31H
0113 320302 STA 203H
0116 3E6F MVI A, 6FH
0118 320402 STA 204H
011B 3E5B MVI A, 91
011D 320502 STA 205H
0120 3E75 MVI A, 117
0122 320602 STA 206H ;занесення даних
0125 0E01 MVI C, 1
0127 0608 MVI B, 8
CHECKBIT:
0129 3A0202 LDA 202H ;перевірка біту чи є одиниця
012C A1 ANA C
012D 37 STC
012E 3F CMC
012F 79 MOV A, C
0130 17 RAL
0131 4F MOV C, A
0132 CA3601 JZ RALE
0135 19 DAD D ;багаторозрядне додавання
RALE: ;зсув молодшого байту
0136 37 STC
0137 3F CMC
0138 7B MOV A, E
0139 17 RAL
013A 5F MOV E, A
013B 7A MOV A, D
013C 1600 MVI D, 0
013E D24301 JNC RALD
0141 1601 MVI D, 1
RALD: ;зсув старшого байту
0143 37 STC
0144 3F CMC
0145 17 RAL
0146 82 ADD D
0147 57 MOV D, A
0148 05 DCR B
0149 C22901 JNZ CHECKBIT ;повернення, якщо В не 0
014C 7C MOV A, H
014D 320702 STA 207H
0150 7D MOV A, L
0151 320802 STA 208H ;збереження результатів
0154 3A0302 LDA 203H
0157 2F CMA
0158 57 MOV D, A
0159 3A0402 LDA 204H
015C 2F CMA
INRA
015D 5F MOV E, A
015E 26FF MVI H, 255
0160 2EFF MVI L, 255
0162 19 DAD D
0163 1600 MVI D, 0
0165 3A0502 LDA 205H
0168 5F MOV E, A
0169 3E00 MVI A, 0
016B 17 RAL
016C 3E00 MVI A, 0
DIVN: ;операція ділення
016E 19 DAD D
016F 3C INR A
0170 D26E01 JNC DIVN ;ділити до поки прапорець непереносу не 1
0173 3D DCR A
0174 320902 STA 209H
0177 5F MOV E, A
0178 3A0702 LDA 207H
017B 2F CMA
017C 67 MOV H, A
017D 3A0802 LDA 208H
0180 2F CMA
0181 6F MOV L, A
0182 2C INR L
0183 19 DAD D ;багаторозрядне віднімання другого результату від першого
0184 7C MOV A, H
0185 320A02 STA 20AH
0188 7D MOV A, L
0189 320B02 STA 20BH
018C 3A0602 LDA 206H
018F 5F MOV E, A
0190 19 DAD D ;багаторозрядне віднімання 117 від результату
0191 7C MOV A, H
0192 2F CMA
0193 320C02 STA 20CH ;запис резудбтатів
0196 7D MOV A, L
0197 2F CMA
0198 3C INR A
0199 320D02 STA 20DH
019C 00 NOP
I019D 76 HLT