- Код: Выделить всё
- {$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 процедур?



