Иллюстрированный самоучитель по Turbo Pascal

Синтаксис ассемблерных команд

Операции встроенного ассемблера

Операция Комментарий
& Перекрытие идентификатора
0 Подвыражение
[ ] Ссылка на память
. (точка) Селектор структуры
HIGH
LOW
Доступ к байту в слове
:
Унарные операции задания знака
OFFSET Перекрытие сегмента
SEG
 
TYPE
 
PTR
 
* /
 
MOD
 
SHL
SHR
 
+ - Бинарные операции
NOT AND OR XOR Операции над битами

Операция &

Осуществляет перекрытие идентификатора: следующий за знаком & идентификатор считается определенным в программе, даже если он совпадает с зарезервированным словом. Например:

var
Ch: Byte;
…….
mov ch,0 {Посылаем 0 в регистр СН}
mov &Ch,0 {Посылаем 0 в переменную Ch}

Операция 0

Круглые скобки используются обычным для Паскаля образом – для изменения порядка исчисления выражения (подвыражение, ограниченное скобками, вычисляется в первую очередь). Если перед скобками стоит имя типа, все выражение приобретает указанный тип. Например:

mov ах,((1+2)*3+4)*5 {АХ = 65}
mov bх,1+2*3+4*5 {ВХ = 27}

Операция [ ]

Определяет ссылку на память. Выражение внутри скобок вычисляется в первую очередь. Обычно оно связывается с регистрами BX, BP,SI, DI и может использовать операции + и - для указания индексации. Например:

mov ah,100 mov ah,[100]
{АН = 100} {Загружаем в АН содержимое байта по адресу DS-0.100}

Операция. (точка).

Селектор элемента структуры. Результат – сумма выражений до и после точки с типом второго выражения. Например:

var
R: record
X: Word; У: Byte
end;
…….
mov ax, R. X
mov R.Y,al
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.