Справочник по языку Ассемблера IBM PC


          

В программе на ассемблере можно


Регистровый операнд — это просто имя регистра. В программе на ассемблере можно использовать имена всех регистров общего назначения и большинства системных регистров.

     mov al,4 ;константу 4 заносим в регистр al  mov dl,pass+4 ;байт по адресу pass+4 в регистр dl  add al,dl ;команда с регистровыми операндами

Базовый и индексный операнды. Этот тип операндов используется для реализации , или их и . 
Структурные операнды используются для доступа к конкретному элементу сложного типа данных, называемого . 
Записи (аналогично структурному типу) используются для доступа к битовому полю некоторой .
Операнды являются элементарными компонентами, из которых формируется часть машинной команды, обозначающая объекты, над которыми выполняется операция.

В более общем случае операнды могут входить как составные части в более сложные образования, называемые выражениями.

Выражения представляют собой комбинации операндов и операторов, рассматриваемые как единое целое.
Результатом вычисления выражения может быть адрес некоторой ячейки памяти или некоторое константное (абсолютное) значение.
Возможные типы операндов мы уже рассмотрели. Перечислим теперь возможные типы операторов ассемблера и синтаксические правила формирования выражений ассемблера.
В приведены поддерживаемые языком ассемблера операторы и перечислены их приоритеты. Дадим краткую характеристику операторов:
Арифметические операторы. К ним относятся:
унарные “+” и “–”;
бинарные “+” и “–”;
умножения “*”;
целочисленного деления “/”;
получения остатка от деления “mod”.
Эти операторы расположены на уровнях приоритета 6, 7, 8 в . Например,

     tab_size equ 50 ;размер массива в байтах size_el equ 2 ;размер элементов … ;вычисляется число элементов массива и заносится в регистр cx  mov cx,tab_size / size_el ;оператор “/”


Рис. 5. Синтаксис арифметических операций
Операторы сдвига выполняют сдвиг выражения на указанное количество разрядов (рис. 6). Например,

Содержание  Назад  Вперед