иемника и источника задаются парами регистров – сегментный регистр:индексный регистр)
команды работы со стеком, которые перемещают данные из памяти в стек, который также находится в памяти.
Адрес оперативной памяти может задаваться прямым адресом (offset) или компонентами (D, X, disp).
Примеры команд на языке ассемблера:
1. mov ax, bx;копирование в ax содержимого bx,
2. mov ax,365;копирование в ax содержимого ячейки памяти по адресу 356,
3. mov ax, СS:bх 356;копирование в ax содержимого ячейки памяти в сегменте CS по адресу, равному сумме содержимого регистра bx и смещения – 356,
4. mov ax, bp si356;копирование в ax содержимого ячейки памяти по адресу, равному сумме содержимого регистров bp, si и смещения 356,
5. mov ax, byte ptr z; копирование в ax содержимого ячейки памяти по адресу z (конструкция byte ptr z уточняет, что адрес z является адресом одного байта, а не слова).
Машинная кодировка команд IA – 16.
МП IA-16 используют команды переменного формата от 1 до 7 байт. Кодировка команд производилась с учетом частоты использования команды в типовых программах.
Команда может иметь (рис. 3. 5. ):
возможно, префикс (1 или 2 однобайтных префикса),
код операции (1 байт),
возможно, постбайт (1байт),
возможно, байты смещения – disp (1 или 2 байта),
возможно, байты непосредственного операнда (1 или 2 байта).
0, 1 или 2
байта1 байт0 или 1 байт0,1 или 2
байта0,1 или 2
байта
префикскод
операциипостбайтбайты
смещениянепосредственный операнд
Рис. 3. 5. Структура команд МП IA -16.
Элементы команды:
Префикс
Это необязательный байт, модифицирующий процедуру выполнения команды.
МП IA – 16 предусматривает использование двух префиксов:
повторения,
замены сегме
Страницы: << < 9 | 10 | 11 | 12 | 13 > >>