Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
КОМАНДИ АРИФМЕТИЧНИХ ОПЕРАЦІЙ.Стр 1 из 4Следующая ⇒
ЗАГАЛЬНІ ВІДОМОСТІ ПРО СИСТЕМУ КОМАНД МІКРОКОНТРОЛЕРА СІМЕЙСТВА 8х51. Система команд мікроконтролера сімейства 8х51 включає у себе 111 основних команд. Їх довжина - один, два, або три байти, але більшість із них (94%) - це одно- або двобайтні команди. Всі команди виконуються за один або два машинні цикли ( відповідно 1 або 2 мкс при тактовій частоті 12 МГц ). Виключенням є команди множення та ділення, які виконуються за чотири машинні цикли ( 4 мкс ). Мікроконтролери сімейства 8х51 використовують прямий, безпосередній, непрямий та неявний способи адресації даних. В якості операндів команд мікроконтролери сімейства 8х51 можуть використовувати окремі біти, чотирьохбітні цифри, байти або двобайтні слова. Всього мікроконтролер виконує 13 типів команд. Мікроконтролер має можливість адресації окремих біт у резидентній пам’яті даних. Крім цього деякі регістри блока регістрів спеціальних функцій також використовують адресацію окремих біт. Адреси банків регістрів загального призначення в резидентній пам’яті даних (РПД) наведені у табл. 1. Карти регістрів та адресів окремих біт в резидентній пам’яті даних і в блоці регістрів спеціальних функцій наведені відповідно у табл. 2 та 3 .
Рисунок 1.1 - Типи команд мікроконтролера сімейства 8х51.
При перегляді команд будуть використані наступні позначення:
Таблиця 1 Адреси банків регістрів R0-R7 загального призначення в резидентній пам’яті даних (РПД).
Таблиця 2 Карта адресів окремих біт в резидентній пам’яті даних (РПД).
Таблиця 3 Карта регістрів та адресів окремих біт в блоці регістрів спеціальних функцій (РСФ).
ФУНКЦІОНАЛЬНІ ГРУПИ КОМАНД МІКРОКОНТРОЛЕРА СІМЕЙСТВА 8х51. Всі команди мікроконтролера сімейства 8х51 можна розбити на п’ять функціональних груп: - переміщення даних; - арифметичних операцій; - логічних операцій; - операцій над бітами; - передачі керування. КОМАНДИ ПЕРЕМІЩЕННЯ ДАНИХ. Ця група включає 28 команд, короткий алгоритм яких наведено в табл. 4, де також вказано код операції ( КОП ), тип команди ( Т ) у відповідності з рис. 1, її довжина в байтах ( В ) та час виконання в машинних циклах ( С ). Таблиця 4 Команди переміщення даних.
За командою MOV виконується переміщення даних із другого операнда в перший. Ця команда не має доступу ні до зовнішньої пам’яті даних, ні до пам’яті програм. Для цього застосовують команди MOVX та MOVC відповідно. Перша з них забезпечує читання/запис байтів із зовнішньої пам’яті даних, друга - читання байт із пам’яті програм. За командою XCH виконується обмін байтами між акумулятором і коміркою регістра пам’яті даних, а за командою XCHD - обмін молодшими тетрадами ( бітами 0-3 ) між акумулятором і коміркою регістра пам’яті даних. Доступ до спеціальних регістрів: PSW, таймером, портами вводу-виводу і до інших регістрів спеціальних функцій, здійснюється заданням відповідного прямого адресу. Ці команди відносяться до команд типу 3. Наприклад, читання PSW в акумулятор може бути виконаний командою MOV A, PSW , яка перетвориться АСЕМБЛЕРом до вигляду MOV A, 0D0h ( E5 D0 ), де Е5 - код операції, а D0 - операнд ( адрес PSW ). КОМАНДИ АРИФМЕТИЧНИХ ОПЕРАЦІЙ. Ця група включає 24 команди, алгоритм виконання яких наведений в табл. 5. Мікроконтролера виконує достатньо широкий набір команд для організації обробки даних, включаючи при цьому команди множення та ділення. За результатами виконання команд ADD, ADDC, SUBB, MUL, DIV встановлюється значення регістра ознак PSW, структура якого наведена на рис.2. Рисунок 2 - Структура регістра ознак PSW. Таблиця 5 Команди арифметичних операцій.
Ознака С встановлюється при переносі із розряду D7, тобто у випадку, коли при виконанні операції результат не поміщається у розрядній сітці акумулятора. Ознака АС встановлюється при переносі із розряду D3 в командах додавання та віднімання і використовується для реалізації десяткової арифметики. Ця ознака використовується при виконанні команди DA A. Ознаки RS1 та RS0 застосовуються для вибору банків регістрів загального призначення R0-R7 згідно з табл. 6. Ознака OV встановлюється при переносі із розряду D6, тобто у випадку, коли результат не поміщається у семи розрядах і восьмий не може бути використаний, як знаковий. Ця ознака необхідна для організації обробки чисел зі знаком. Ознака Р встановлюється і скидається апаратно. Якщо число одиничних біт в акумуляторі непарне, то Р=1, у іншому випадку Р=0. Таблиця 6 Вибір банків регістрів загального призначення (РЗП) R0-R7 за ознаками RS1 та RS0.
КОМАНДИ ЛОГІЧНИХ ОПЕРАЦІЙ. У цій групі 25 команд, короткий алгоритм яких наведений у табл. 7. Ці команди виконують операції над байтами: логічне “І”, логічне “АБО”, логічне “Виключаючи АБО”, логічне заперечення, скид у нульове значення та зсув. Таблиця 7 Команди логічних операцій. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-06-01; просмотров: 233. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |