Виконання арифметичних операцiй в МК КР1816ВЕ48
Автор: Dima1987 • Февраль 22, 2024 • Лабораторная работа • 793 Слов (4 Страниц) • 164 Просмотры
Міністерство освіти і науки України
Національний Авіаційний Університет
Факультет кібербезпеки, комп’ютерної та програмної інженерії
Лабораторна робота № 4
З дисципліни «Мікропроцесорні системи та МК»
Тема: ВИКОНАННЯ АРИФМЕТИЧНИХ ОПЕРАЦІЙ В МК КР1816ВЕ48
Виконав:
Студент групи КС 333
Мирошниченко Дмитро
Київ 2023
Мета роботи − вивчення структури, режимів роботи, системи команд і отримання навиків розробки програм виконання операції множення в мікроконтролері МК48.
Короткі теоретичні відомості:
До команд основної групи належать команди виконання арифметичних та логічних операцій. В МК48 виконуються наступні операції над восьмибітними цілими двійковими числами без знаку: двійкове додавання, двійкове додавання з урахуванням переносу, операції десяткової корекції, інкременту, декременту, зсуву, кон’юнкції, диз’юнкції тощо. Дві логічні команди скидання CLR та інверсія CPL дозволяють виконувати операції з бітами. Під час додавання застосовується неявна адресація джерела першого операнду і місця розташування результату, в якості яких використовується акумулятор. До вмісту акумулятора можна додавати вміст регістру РЗП, константу, вміст комірки РПД. Під час підсумовування формується ознака переносу С, що фіксується у відповідному розряді регістру RSW.Команда підсумовування ADDC з урахуванням переносу дозволяє виконувати підсумовування багатобайтних чисел. В МК48 відсутня безпосередньо операція віднімання, при цьому віднімання реалізується за наступної послідовності дій: отримання додаткового коду другого операнду, додавання його до вмісту А, де зберігається перший операнд, та подання результату в доповнювальному коді. Складні арифметичні операції ділення, множення, піднесення до ступеню і таке інше виконуються за підпрограмами. Команди виконання арифметичних операцій змінюють відповідні ознаки в регістрі слова стану програми RSW.
Приклади команд:
[pic 1]
[pic 2]
Порядок виконання роботи
ВАРІАНТ 14
[pic 3]
[pic 4]
Використовуючи моделюючий комплекс SCM MK48 налагодити розроблену програму:– сформувати початковий текст програми у вікні екранного редактору комплексу SCM MK48,виконати пошук синтаксичних помилок та скомпілювати програму;– налагодити розроблену програму множення за допомогою програмно-логічної моделі SCM MK48 з отриманням повної інформації про хід виконання програми.
SEL RB0
CLR F1
INS A,BUS
MOV R2,A
INS A,BUS
MOV R3,A
MOV A, R2
ANL A, #10000000b
;RR A
MOV R7, A
CLR A
MOV A, R2
ANL A, #01111111b
MOV R2, A
CLR A
MOV A, R3
ANL A,
XRL A, R7
MOV R7, A
JNZ DK
MOV A, R3
ANL A, #11111110b
MOV R3, A
JMP CYCLE1
DK:
CPL F1
CYCLE1:
MOV A, R2
ANL A, #00000001b
JNZ X1
JMP SHIFT
X1:
MOV A, R1
ADD A, R3
MOV R1, A
JMP SHIFT
SHIFT:
MOV A, R3
RR A
ANL A, #01111111b
MOV R3, A
CLR A
MOV A, R2
RR A
ANL A, #01111111b
MOV R2, A
CLR A
JMP STOPPER
STOPPER:
MOV A, R2
ORL A, #00000000b
JNZ CYCLE1
JF1 DKER
JMP END_STEP
DKER:
MOV A, R1
CPL A
INC A
MOV R1, A
JMP END_STEP
END_STEP:
MOV A, R1
...