- •Разработка и отладка программного обеспечения
- •1. Микропроцессорная система на базе микропроцессора мп кр580вм80а
- •1.1. Структурная схема мпс кр580вм80а
- •1.2. Программная модель мпс кр580вм80а
- •1.3. Система команд Команды пересылки данных
- •Межрегистровые передачи
- •Запись в память
- •Команды обращения к стеку.
- •Задания для самопроверки
- •Команды арифметических операций.
- •Команды сложения.
- •Команды вычитания
- •Команды приращения положительное и приращение отрицательное
- •Вопросы для самоконтроля
- •Логические команды
- •Вопросы для самоконтроля
- •Команды перехода и вызова подпрограмм.
- •Вопросы для самоконтроля
- •2. Организация временных интервалов в микро-эвм.
- •3. Микроконтроллер pic16f84
- •3.1. Общие характеристики
- •3.1.1. Периферия и Ввод/Вывод
- •3.1.2. Кмоп технология
- •3.2 Условное графическое обозначение
- •3.3. Структура кристалла pic16c84
- •Управляющий регистр прерываний intcon и его биты
- •3.4. Система команд
- •Бит ориентированные команды
- •Байт-ориентированные команды.
- •3.5. Запуск кристалла.
- •Последовательность запуска кристалла в работу
- •Типы генераторов
- •Установка конфигурации.
- •Код идентификации
- •3.6. Интегрированные устройства. Порт а
- •Таймер/счетчик.
- •Встроенный предварительный делитель частоты
- •Долговременная память данных eeprom.
- •Задания для самопроверки
- •4. Микропроцессорные устройства обработки информации.
- •4.1 Расчет основных характеристик системы сбора данных.
- •4.2. Микропроцессоры в системах передачи и обработки сигналов.
- •Программа формирования импульсной последовательности.
- •Формирование импульсных последовательностей с помощью pic16f84.
- •Программа формирования импульсной последовательности.
- •Микропроцессорные устройства регенерации сигнала икм.
- •4.3. Применение микропроцессорных систем в задаче кодирования информации
- •Заключение
- •Литература
Команды арифметических операций.
Каким бы мощным устройством мы не считали микропроцессоры, многие из них в действительности могут выполнять только одну команду арифметической обработки – СЛОЖЕНИЕ. Способность микропроцессора выполнять разнообразные арифметические действия обусловлена тем обстоятельством, что сложение он может выполнять различными способами, кроме того, очень быстро.
Микропроцессор может, например, сложить одно двоичное число с дополнительным кодом другого двоичного числа. Тем самым реализуется операция вычитания. Сложение может быть повторено множество раз, а многократное прибавление есть не что иное, как операция умножения. Повторяющееся вычитания представляют собой операцию деления.
Арифметические операции воздействуют на все триггеры регистра признаков (F – регистра).
Команды сложения.
а) Сложение с регистром
ADD r (A)+(r)A
ПАМЯТЬ
-
ADD r
Где r - регистры B,C,D,E,H,L,A.
По команде СЛОЖЕНИЕ С РЕГИСТРОМ содержимое регистра r прибавляется к содержимому аккумулятора (регистра А). Результат (сумма) помещается в аккумулятор. Исходное содержимое аккумулятора теряется. Это однобайтовая команда для выполнения которой затрачивается 1 машинный цикл.
б) Сложение с памятью косвенное
ADD M (A)+(M)A
ПАМЯТЬ
-
ADD M
По команде СЛОЖЕНИЕ С ПАМЯТЬЮ КОСВЕННОЕ содержимое области памяти, адрес которой указан в регистровой паре H,L, прибавляется к содержимому аккумулятора (регистра А). Результат (сумма) помещается в аккумулятор. Исходное содержимое аккумулятора теряется. Это однобайтовая команда для выполнения которой затрачивается 2 машинных цикла.
Выполнение команды ADD M требует предварительной загрузки адреса памяти в регистровую пару H,L.
В) Сложение с непосредственными данными
ADI данные (A)+<данные>A
ПАМЯТЬ
-
ADD
Данные
При реализации команды СЛОЖЕНИЕ С НЕПОСРЕДСТВЕННЫМИ ДАННЫМИ содержимое второго байта команды прибавляется к содержимому аккумулятора. Результат помещается в аккумулятор. Исходное содержимое аккумулятора теряется. Это двухбайтовая команда выполнение которой занимает 2 машинных цикла.
Команды сложения с переносом
Команда СЛОЖЕНИЕ С ПЕРЕНОСОМ дает возможность производить сложение двух чисел вместе с переносом, полученным в предыдущей операции.
а) Сложение с регистром и переносом
ADC r (A)+(r)+CA
ПАМЯТЬ
-
ADC r
Команда 1-байтовая, выполняется за 1 машинный цикл.
б) Сложение с непосредственными данными и переносом
ACI данные (A)+<данные>+CA
ПАМЯТЬ
-
AСI
Данные
Команда 2-байтовая, выполняется за 2 машинных цикла.
Команды сложения с переносом применяют при выполнении арифметических операций с повышенной точностью. Арифметические операции с повышенной точностью используются, когда одного слова данных оказывается недостаточно для представления промежуточного или окончательного результата вычислений. Понятие арифметики повышенной точности означает использование для представления одного числа размера данных более чем одно слово.
При работе с 8-разрядным микропроцессором, прибегая к двойному формату, т.е. используя два слова для представления одного числа, можно представить числа от 0 до 65535. Применяя тройной формат, оказывается возможным представить числа от 0 до 16777215. Одинарный, двойной и тройной форматы 8-разрядного слова показаны в таб. 1.
Таблица 1
|
Двоичное представление |
Шестнадцатиричное представление |
Десятичное представление |
Одинарный формат |
00000000 11111111 |
00 FF |
0 255 |
Двойной формат |
00000000 00000000 11111111 11111111 |
0000 FFFF |
0 65535 |
Тройной формат |
00000000 00000000 00000000 11111111 11111111 11111111 |
000000 FFFFFF |
0 16777215 |
При сложении чисел двойного формата сначала складываются их младшие байты. Это делается с помощью обычной команды СЛОЖЕНИЕ, при выполнении которой не используется значение переноса. При этом, конечно, может образоваться перенос из старшего разряда младшего байта суммы. Затем посредством команды СЛОЖЕНИЕ С ПЕРЕНОСОМ производится сложение старших байтов чисел.
Когда числа представлены в тройном формате, необходимо реализовать еще одну команду СЛОЖЕНИЕ С ПЕРЕНОСОМ. При выполнении этой, третьей по счету команды, складываются старшие байты двух чисел тройного формата.
Перенос, вырабатываемый в результате выполнения последней операции, входящей в последовательность действий по арифметической обработке повышенной точности, необходимо либо сохранить, либо отбросить. В большинстве случаев предполагается, что при выполнении последней операции перенос не образуется, т.е. применен формат, достаточный для размещения наибольшего возможного результата вместе с его битом знака.
