Einzelnen Beitrag anzeigen

idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#11

AW: [ASM] Set-Ausdruck modifizieren

  Alt 13. Jun 2010, 08:57
Zitat:
Besser wäre, add al,d2 nebst cmp al,3a.
Der Delphi Compiler arbeitet bei Sets nur mit ganzen Bytegrenzen, also mit Vielfachen von 8.
z.B. die Konstante [6..10] benötigt zwei bytes, also den Speicherbereich von [0..15], obwohl die Bits um weniger als 8 auseinander liegen und in einem Byte Platz hätten. Deshalb add al,d8 statt add al,d2.
Bei der Abfrage cmp al,47 bin ich selbst reingefallen und habe erst geglaubt, dass 47 dem grössten Buchstaben der Setkonstante entspricht, statt dessen entspricht 47 dem grössten Buchstaben, der in den Bytes Platz hätte, die für die Setkonstante benötigt werden.

Aber ich würde sagen, die "Kosten" für das "teure" bt [475bf8],eax fallen nicht wirklich ins Gewicht.

Geändert von idefix2 (13. Jun 2010 um 09:05 Uhr)
  Mit Zitat antworten Zitat