Рассмотрим данные, их форматы и представление а памяти, с которыми работает МП 80486. Большинство из содержания данного раздела относится ко всем современным процессорам.
Базовой единицей данных является байт. Физический адрес, выдаваемый процессором на внешнюю шину адреса , является адресом (порядковым номером) байта в адресуемом пространстве памяти. Ширина шины адреса (число линий, число разрядов адреса) n определяет максимальное адресное пространство N=2^n. Адрес байта изменяется от 0 до N-1. МП 80486 имеет адресное пространство: n=32, N=2^32 = 4Gбайта.
При ширине шины данных n=32 за одно обращение к памяти передается до 4 байт. Кроме значения данных длинной в байт используются данные длинной 2 байта - слово и 4 байта- двойное слово. В больших машинах (mainframe) под словом понимается длина разрядов аппаратной реализации основных регистров или ширина шины данных. Применительно к МП 80486 его слово состояло бы из 4 байт. Информация в памяти располагается так: младшие разряды в младшем байте - в байте с меньшим адресом, старшие разряды в последующих байтах - в байтах с большими адресами.
МП 80486 имеет команды, длина которых меняется от 1 байта до 15 байтов. Команды содержат всю необходимую информацию для выполнения требуемой операции с заданными операндами. Операнды могут быть размером в бат, слово или двойное слово.
Поле Длина (бит) Назначение
Префиксы
REP Повторение (REPeate), применяется в цепочечных
командах
OS Operand Size -переключает 16 и 32 разрядные
операнды
AS Address Size -определяет формирование 16- и
32-разрядных адресов
171
S Segment override - указывает конкретный сегмент-
ный регистр
LOCK Префикс блокировки шины, при котором формируется сигнал LOCK
Код операции
w 1 Определяет размер операнда в байтах (w=0) или
нет (w=1)
d 1 Определяет направление передачи данных:
из регистра в регистр/память d=0
из регистра/памяти в регистр d=1
S 1 Расширение 8-битных данных до слова (двоичного)
S=1
В общем случае формат команды содержит обязательную и необязательную часть. Минимальная длина команды содержит обязательное поле-код операции, длиной 1 байт (например, команды сброса флагов CLC,CLD,CLI и др).
Необязательной частью команды являются префиксы.