tw0735.pp 311 B

12345678910111213141516171819202122232425
  1. {$asmmode intel}
  2. {$inline on}
  3. procedure DoIt;
  4. begin
  5. Writeln('DoIt was called');
  6. end;
  7. const
  8. CB : word = 5;
  9. procedure A(B: word); assembler; inline;
  10. asm
  11. MOV AX,B
  12. CMP AX,[CB]
  13. JZ @OK
  14. MOV [CB],AX
  15. CALL DoIt
  16. @OK: { <-- creates labels with same name }
  17. end;
  18. begin
  19. A(5);
  20. A(8);
  21. end.