Einzelnen Beitrag anzeigen

Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.096 Beiträge
 
FreePascal / Lazarus
 
#1

Optimallösung gesucht: Little Endian <-> Big Endian

  Alt 6. Mai 2008, 17:58
Hi,

kann man das noch optimieren? (Kommentiert ist der Code, den Delphi erzeugt.)

Delphi-Quellcode:
procedure SwapBytes(var X: WideChar);
asm
  mov dx, [X] //mov dx, [eax]
  xchg dl, dh
  mov [X], dx //mov [eax], dx
end;

procedure SwapBytes(var X: UCS4Char);
asm
  mov edx, [X] //mov edx, [eax]
  bswap edx
  mov [X], edx //mov [eax], edx
end;
Und ich geh doch richtig davon aus, dass das, was übergeben wird, der Zeiger auf das Zeichen ist (wegen var)?

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat