Руководство по языку B.Pascal 7

       

Оператор asm


Встроенный ассемблер становится доступным с помощью операто- ров asm. Оператор asm имеет следующий синтаксис:

asm оператор_ассемблера < разделитель оператор_ассемблера > end

где "оператор_ассемблера" представляет собой оператор ассемблера, а "разделитель " - это точка с запятой, новая строка или коммен- тарий Паскаля. Приведем некоторые примеры операторов asm:

asm mov ah,0 { считать с клавиатуры код функции } int 16H { для чтения клавиши вызвать BIOS } mov CharCode,al { сохранить код ASCII } mov ScanCode,ah { сохранить код опроса } end;

asm

push ds { сохранить DS } lds si,Source { загрузить указатель источника } les di,Dest { загрузить указатель приемника } mov cx,Count { загрузить размер блока } cld { переместить } rep movsb { скопировать блок } pop ds { восстановить DS } end;

Заметим, что на одной строке можно разместить несколько опе- раторов ассемблера, разделив их точками с запятой. Кроме того следует отметить, что если операторы ассемблера размещаются на разных строках, разделять их точками с запятой не требуется. За- метим также, что точка с запятой не говорит о том, что остальная часть строки представляет собой комментарий. Комментарии следует записывать, используя синтаксис Паскаля: с помощью { и } или (* и *).



Содержание раздела