Delphi assembler constant 'eof'

Похоже, что в контексте блока asm существует недокументированная константа eof. Это было проверено с помощью Delphi 7.

program TestEof;
{$APPTYPE CONSOLE}
var
  example : Integer;
begin
  asm
    mov example, eof
  end;
  writeln(example);
  readln;
end.

Выводится 14.

Откуда взялась эта константа eof и ее значение $0E или 14?


EDIT: вот результат компиляции

...
call @InitExe
// mov example, eof
mov [example], $0000000e
// writeln(example)
mov eax, [$004040a4]
mov edx, [example]
call @Write0Long
call @WriteLn
call @_IOTest
// readln;
...
10
задан Egon 2 January 2012 в 16:24
поделиться