Что я делаю не так (Assembler встроенный в Delphi)
Формулировка задачи:
Написал простенькую программку для расчета (((A*X div B)*X div C)*X div D)*X выдает ошибку :\ В общем вот код
Ошибки бывают двух видов:
1) При типе переменных Integer
2) При типе переменных Single
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
A,B,C,D,X,R: Integer;
begin
Writeln('Введите целые числа A, B, C, D, X ');
Write('A=');
Readln(A);
Write('B=');
Readln(B);
Write('C=');
Readln(C);
Write('D=');
Readln(D);
Write('X=');
Readln(X);
asm
mov eax,a
mul x
div b
mov ebx,x
div c
mul eax
mov eax,x
div d
mul ebx
mov ebx,x
mul eax
mov r,ebx
end;
Writeln('Result=',R);
Readln;
Readln;
end.Решение задачи: «Что я делаю не так (Assembler встроенный в Delphi)»
textual
Листинг программы
asm XOR EDX,EDX mov eax,a mul x div b mul x div c mul x div d mul x mov r,eax //и, возможно, старшая часть результата в EDX end;