Кажется, что есть недокументированная константа eof
в контексте блока asm.Это было проверено с использованием Delphi 7.
program TestEof;
{$APPTYPE CONSOLE}
var
example : Integer;
begin
asm
mov example, eof
end;
writeln(example);
readln;
end.
Это распечатывает 14
.
Откуда берется эта константа eof
и ее значение $0E
или 14
?
РЕДАКТИРОВАТЬ: это результат компиляции
...
call @InitExe
// mov example, eof
mov [example], $0000000e
// writeln(example)
mov eax, [$004040a4]
mov edx, [example]
call @Write0Long
call @WriteLn
call @_IOTest
// readln;
...