Пример взаимодействия программ
Возврат данных в вызывающую программу
End main
Asmproc endp
Ret
Mov cx, kol
Xor bh, bh
Mov bl, 07h
Mov al, chr
Mov ah, 09h
Mov dl, byte ptr x
Mov dh, byte ptr y
Public asmproc
Code
Stack 256
Model large pascal
Masm
main:
asmproc proc near chr:byte, x:word, y:word, kol:word
mov ah, 02h
int 10h ;позиционирование курсора в нужное место
int 10h; вывод символа
Программа на ассемблере возвращает результат в регистрах:
· ax – слово
· al – байт
· в паре dx:ax – двойное слово: dx – старшие разряды, ax–младшие
· в паре dx:ax – указатель: dx – адрес сегмента, ax – смещение
Программа на языке Pascal
Program prg;
function addasm : word; external;
{$L <имя>, obj} ; подключение объектного файла