
- •Цифровые и микропроцессорные устройства
- •Часть 3
- •Введение
- •Порядок выполнения работы
- •Структурная схема умк
- •Назначение органов управления, ввода и индикации
- •Включение и запуск умк
- •Команды системной программы монитор умк
- •Команда просмотр и модификация содержимого ячейки памяти
- •Команда просмотр и модификация содержимого регистров
- •Команда заполнение массива памяти константой
- •5.4 Команда старт программы
- •Команда подсчет контрольной суммы
- •Команда перемещение массива памяти
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды загрузки регистров общего пользования
- •Команды манипуляции 16-разрядными данными
- •Команды загрузки регистра указателя стека
- •Команды пересылки
- •Команда загрузки счетчика команд pchl
- •Команды прямой записи в память
- •Команды чтения памяти по прямому адресу
- •Команды чтения-записи памяти при косвенной адресации через регистровую пару hl
- •Команды чтения/записи при прямой адресации через регистровые пары bc, de
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды сложения 8-разрядных чисел
- •Команды вычитания 8-разрядных чисел
- •Команды двойного сложения
- •Команды инкремента
- •Команды декремента
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Команды логического сложения
- •Команды логического умножения
- •Команды исключающие или
- •Команда инверсия
- •Команды сравнения
- •Теоретическое обоснование
- •Команды сравнения с содержимым регистра
- •Команды сдвига
- •Теоретическое обоснование
- •Команды циклического сдвига
- •Команды сдвига через перенос
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды безусловного перехода
- •Команды перехода по признаку – ноль
- •Команды перехода по признаку с – перенос
- •Команды перехода по признаку р – четность
- •Приборы, оборудование и документация
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Методические указания
- •Теоретическое обоснование
- •Команды записи в стек, восстановления и обмена стеком
- •Команды вызова подпрограммы и возврата
- •Изучение архитектуры однокристального микроконтроллера pic16f84 Цель работы
- •Подготовка к выполнению работы
- •Вопросы для самоконтроля
- •Порядок выполнения работы
- •Содержание отчета
- •Контрольные вопросы
- •Требования к знаниям и умениям учащихся
- •Литература
- •Пример выполнения задания на симуляторе sim8085 microprocessor simulator
- •Содержание
- •Цифровые и микропроцессорные устройства
- •Часть 3
Команды сдвига
Теоретическое обоснование
В системе команд микропроцессора КР580ВМ80 предусмотрены следующие команды сдвига:
циклический сдвиг влево;
циклический сдвиг вправо;
сдвиг влево через перенос;
сдвиг вправо через перенос.
Команды сдвига выполняются в регистре-аккумуляторе над 8-разрядными операндами. Результат пересылается в регистр-аккумулятор.
Команда циклического сдвига влево перемещает каждый бит байта на один разряд влево. При этом содержимое старшего разряда записывается в младший разряд и в бит переноса.
Команда сдвига влево через перенос перемещает содержимое каждого бита байта влево на один разряд. При этом содержимое бита переноса записывается в младший разряд, а содержимое старшего разряда пересылается в бит переноса. Используя эту команду можно, реализовать операцию умножения на число, кратное 2.
Команда сдвига вправо через перенос перемещает содержимое каждого разряда байта вправо на один разряд. При этом в старший разряд байта записывается значение бита переноса, а в него заносится содержимое младшего разряда байта. Используя эту команду, можно реализовать операцию деления на число, кратное 2.
Команды циклического сдвига
RLC – циклический сдвиг влево;
RRC – циклический сдвиг вправо.
Записать в память, начиная с адреса 0850Н, коды программы (таблица 57), реализующей операцию объединения старших тетрад двух байтов, содержащихся в рег. В и С, в один, используя команду RRC.
Выполнить программу, предварительно задавая исходные значения в соответствии с таблицей 58.
СТ0850 085СВП.
Сравнить полученные результаты с данными таблицы 58.
Таблица 57 – Контрольная программа, содержащая команды сдвига и логические команды
Адрес |
Команда |
Операнд |
Машинный код |
Комментарий |
0850 |
MOV |
A, С |
79 |
; Перемещ. ст. тетр. 1 ;байта |
0851 |
RRC |
|
0F |
; На место мл. тетрады |
0852 |
RRC |
|
0F |
; |
0853 |
RRC |
|
0F |
; |
0854 |
RRC |
|
0F |
; |
0855 |
ANI |
0FH |
E6 0F |
; Выдел. ст. тетр. 1 ; байта |
0857 |
MOV |
C, A |
4F |
; |
0858 |
MOV |
A, B |
78 |
; |
0859 |
ANI |
F0H |
E6 F0 |
; Выдел. ст. тетр. 2 ; байта |
085В |
ORA |
C |
B1 |
; Объедин. двух байтов в 1 |
085С |
HLT |
|
76 |
;останов |
Таблица 58 – Исходные данные и результаты для контрольной программы, содержащей команды сдвига и логические команды
Вариант |
1 |
2 |
3 |
4 |
(С) |
72 |
F0 |
51 |
19 |
(В) |
9F |
0F |
A3 |
86 |
(А) – рез. |
97 |
0F |
A5 |
81 |