Встроенный ассемблер становится доступным с помощью операто-
ров asm. Оператор asm имеет следующий синтаксис:
asm оператор_ассемблера < разделитель оператор_ассемблера > end
где "оператор_ассемблера" представляет собой оператор ассемблера,
а "разделитель " - это точка с запятой, новая строка или коммен-
тарий Паскаля. Приведем некоторые примеры операторов asm:
asm
mov ah,0 { считать с клавиатуры код функции }
int 16H { для чтения клавиши вызвать BIOS }
mov CharCode,al { сохранить код ASCII }
mov ScanCode,ah { сохранить код опроса }
end;
asm
B.Pascal 7 & Objects/LR - 412 -
push ds { сохранить DS }
lds si,Source { загрузить указатель источника }
les di,Dest { загрузить указатель приемника }
mov cx,Count { загрузить размер блока }
cld { переместить }
rep movsb { скопировать блок }
pop ds { восстановить DS }
end;
Заметим, что на одной строке можно разместить несколько опе-
раторов ассемблера, разделив их точками с запятой. Кроме того
следует отметить, что если операторы ассемблера размещаются на
разных строках, разделять их точками с запятой не требуется. За-
метим также, что точка с запятой не говорит о том, что остальная
часть строки представляет собой комментарий. Комментарии следует
записывать, используя синтаксис Паскаля: с помощью { и } или (* и
*).