Формирование кода команды на примере команд пересылки
Дата добавления: 2014-01-11; просмотров: 8; лекция была полезна: 0 студентам(у); не полезна: 0 студентам(у).
Опубликованный материал нарушает авторские права? сообщите нам...
Форматы команд
Программная модель МП
Способы адресации. Форматы команд
Слово состояния микропроцессора
Из хранимых признаков МП составляет свое слово состояния (1 байт). Содержит 8 разрядов:
| D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
| S | Z | H | P | C |
S – (sign) признак отрицательности числа
Z – (zero) признак 0
H – признак переноса между тетрадами. Необходим для работы ДК
P – признак четности числа единиц в результате
C – (carry) основной перенос – переполнение разрядной сетки
Способ адресации – нахождение источников и приемников команды.
5 способов адресации: Регистровый– адрес регистра источника и приемника находится в коде команды (например, команды пересылки). Регистрово-косвенный – адрес ячейки памяти находится как содержимое индексного (адресного, косвенного) регистра – регистровая пара HL. Непосредственный – информация находится в самой команде – во 2-м или 3-м байте команды. Прямой – в коде команды во 2-м или во 2-м и 3-м байте указывается адрес внешнего комплексного устройства или ячейки памяти. Стековый – включается механизм стековой памяти. Адрес ячейки памяти находится как содержимое указателя стека.
| B 000 | C 001 | } | РОН | |||
| D 010 | E 011 | |||||
| H 100 | L 101 | |||||
| M 110 | Абстрактная ячейка памяти | |||||
| A 111 | F | PSW – слово состояния программы, включающее аккумулятор и регистр | ||||
| SPH | SPL | SP – указатель стека | ||||
| PCH | PCL | PC – программный счетчик | ||||
| 65 536 | Порт ввода | |||||
| … | ||||||
| FF | ||||||
| Порт вывода | ||||||
| … | ||||||
| FFFE | ||||||
| FFFF | FF | |||||
Размер слова МП составляет 8 двоичных разрядов, поэтому разрядность всех регистров (кроме счетчика команд и указателя стековой памяти) составляет также 8 разрядов.
Для команд косвенной адресации и удвоенной длины слова РОН могут объединяться в пары BC, DE, HL. HL – индексный регистр. Служит для регистрово-косвенного способа адресации.
В регистрах B, D, H находится старший байт слова. C, D, E – младшие байты.
F – регистр флагов и условий, использует 5 байтов из 8.
PC и SP – по 16 разрядов.
Слово состояния команды состоит из 2 байтов. Старший представляет содержимое аккумулятора, а младший содержит флаги условий, связанные с результатом выполнения арифметических и логических операций.
| A | |||||||||||||||||||
| Б1 | Аккумулятор | ||||||||||||||||||
| F | |||||||||||||||||||
| Б2 | S | Z | H | P | C | Флаги условий |
S – флаг знака, устанавливается, если знаковый бит результата равен 1.
Z – флаг нуля, устанавливается, если результат операции равен 0.
H – флаг дополнительного переноса, при наличии переноса из бита 3 результата операции.
P – флаг четности, если результат в аккумуляторе содержит четное число единиц.
C – флаг переноса, при наличии переноса или заема из старшего, 7-го разряда результата.
MOV – передвижение, MVI – передвижение непосредственных данных
MOV RП, RИ – пересылка из регистра источника в регистр приемник
| КОП | RП | RИ |
КОП – код операции – пересылка.
Обозначения:
| […] – содержимое (…) – адрес. | [RИ] ® RП содержимое RИ пересылается в RП |
MOV M, RИ – команда, записывающая содержимое RИ в память.
[RИ] ® M ([HL])
MVI RП, I
MVI B, 25 – запись 2-го байта в B
[B2] ® RП