Assembler
Рис. 13. Синтаксис оператора получения смещения
Например,
.data
pole dw 5
...
.code
...
mov ax,seg pole
mov es,ax
mov dx,offset pole ;теперь в паре es:dx полный адрес pole
Как и в языках высокого уровня, выполнение операторов ассемблера при вычислении выражений осуществляется в соответствии с их приоритетами (см. табл. 2). Операции с одинаковыми приоритетами выполняются последовательно слева направо. Изменение порядка выполнения возможно путем расстановки круглых скобок, которые имеют наивысший приоритет.
Таблица 2. Операторы и их приоритет
ОператорПриоритет
length, size, width, mask, (, ), [, ], <, >1
.2
:3
ptr, offset, seg, type, this4
high, low5
+, - (унарные)6
*, /, mod, shl, shr7
+, -, (бинарные)8
eq, ne, lt, le, gt, ge9
not10
and11