Thema: Delphi Problem mit Overflow

Einzelnen Beitrag anzeigen

Puhbaehr
(Gast)

n/a Beiträge
 
#5

Re: Problem mit Overflow

  Alt 11. Aug 2006, 17:16
Und gleiches per Code abfangen/abfragen?

Pseudocode:
Code:
var Zahl : Byte;
...
Zahl := 200;
inc (Zahl, 100);
if (überlauf) then ...
Ich hab versucht mit dem Carry-Flag zu experimentieren.
Asm-Pseudocode:
Code:
function Carry : boolean; Register;
 asm
  push EAX

  jc @@C      // jump if carry
  jmp @@NC

  @@C:        // carry
  mov AL, 1
  jmp @@end

  @@NC:       // no-carry
  mov AL, 0

  @@end:
  mov Result, AL // mov Result

  pop EAX
 end;

...

Zahl := 200;
inc (Zahl, 100);
if (Carry) then ...
Funktioniert im genannten Beispiel. Funktioniert aber nicht nach z.B. GetFileSize
Reicht das Carry-Flag um auf einen Überlauf zu prüfen?
  Mit Zitat antworten Zitat