Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mIKROPROTsESSORY / LECTMP_2012_part1.doc
Скачиваний:
105
Добавлен:
09.04.2015
Размер:
1.47 Mб
Скачать

2.4.5. Форматы данных и команд

Команды на выполнение МП определенных операций хранят в памяти в виде 8-ми разрядных слов в соседних ячейках. Сами данные всегда 8-ми разрядные, причем младший бит обозначается - D0 , а старший - D7 (см. рис. 2.11). Байт данных можно условно разделить на старший полубайт (4 старших разряда) и младший полубайт (4 младших разряда). Каждый полубайт при написании программы представляется шестнадцатеричным числом, так что байт, изображенный на рис. 2.11 можно записать в виде Е716. Диапазон представления чисел таким форматом 0…25510.

Представленный на рис. 2.11 формат данных называется двоичным числом без знака. Это основной формат чисел для данного МП. Однако есть возможность использовать другой формат – двоичное число со знаком. В нем самый старший бит называется знаковым: если D7= 1, то число отрицательное, представленное в дополнительном коде, если D7=0 – то положительное. Остальные семь младших разрядов представляют собой собственно число. Естественно, диапазон представления чисел байтом будет –128…+128.

Команды МП могут быть однобайтовыми (рис. 2.12А), двух байтовыми (рис. 2.12Б), трехбайтовыми (рис. 2.12В). В однобайтовой команде указывается код операции, в котором зашифрованы коды регистров, с которыми работает МП. В двухбайтовых командах байт В1 представляет собой код операция, а байт В2 - данные которые непосредственно загружаются в регистры МП или ячейку памяти. В трехбайтовых командах первый байт представляет собой код команды, а второй и третий байт - информация об адресе перехода (в операциях перехода) или данные, которые записываются в две соседние ячейки памяти (при оперировании с 16-ти разрядными числами).

Рис. 2.11. Обозначение байта данных

Рис. 2.12. Формат команд в МП

2.5. Форматы команд и способы адресации

Формат данных, которые обрабатывает процессор, зависят от его разрядности. В МП КР580ИК80А данные 8-ми разрядные, в МП К1816ВМ86 - 16-ти разрядные, а для системы, построенной на секционированных процессорах, формат данных зависит от числа каскадно-соединенных БИС МП. Однако всегда первый разряд обозначается D0 , затем D1 - и т.д. Иногда слово данных разделяют на части. Например, восемь разрядов (или байт) данных можно разделить на младший и старший полубайт. Эти 4 разряда удобно в этом случае записывать в шестнадцатеричном виде. Конкретная запись слова данных зависит от вида МП, который используют в МПС.

Формат команд даже в пределах одного МП может изменяться в зависимости от вида команды, способа адресации и т.д. На рис. 2.12 показаны возможные форматы команд для МП КР580ИК80А. Однобайтовая команда содержит как код операции, так и коды РОН, в которые осуществляется пересылка данных. Иногда однобайтовые команды содержат только один код операции (для арифметических и логических операций, операций вызова подпрограмм и возврата из подпрограмм и т.п.). В двухбайтовых командах (рис. 2.12Б) первый байт содержит код операции, а второй содержит конкретную информацию (например, при операции непосредственной загрузки в регистр второй байт содержит данные, которые загружаются). Команды ввода-вывода содержат второй байт - номер устройства. Во втором и третьем байте трехбайтовых команд (рис. 2.12В) могут храниться операнды или адреса переходов. В памяти двухбайтовые и трехбайтовые команды хранятся в соседних ячейках.

Способы адресации. Способы адресации показывают, каким образом используется поле команды для указания адресов и кодов РОН, ячеек памяти и способов пересылки данных.

Прямая адресация. При этом способе адреса операндов указываются непосредственно в теле команды (рис. 2.13). Эти операнды используются в операции, код которой указан в этой же команде. Данный типа адресации наиболее простой и быстрый из всех способов.

Непосредственная адресация. При этом способе операнд непосредственно указывается в команде (рис. 2.15), как правило, во втором байте (при двухбайтовой команде) или во втором и третьем байте (при трехбайтовой команде).

Рис. 2.13. Прямая адресация в командах

Рис. 2.14. Непосредственная адресация в командах

Косвенная адресация. При этом для указания адреса операнда используются регистры МП (в МП КР580ВМ80 - например, пара регистров HL). Содержимое этих регистров служит адресом ячейки памяти, в которой находится операнд (рис. 2.15).

Рис. 2.16. Косвенная адресация в командах

Соседние файлы в папке mIKROPROTsESSORY