- Код: Выделить всё
{$mode objfpc}{$H+}
{$inline on}
{$ASMMODE intel}
procedure DM(W: Word; dwr: byte; var D, M: byte); assembler;
asm
mov ax, W;
div dwr;
mov byte [M], ah;
mov byte [D], al;
end;
var
{div, mod}
D, M: byte;
begin
DM(20, 3, d, m);
Writeln('D = ', D, ' M = ', M);
readln;
end.
где процедура должна вернуть результат(div и mod операций) через 2 переменные, но возвращает только одну переменную.
В чем проблема? Каким образом FPC возвращает результаты assembler процедур?