Einzelnen Beitrag anzeigen

USchuster

Registriert seit: 12. Sep 2010
Ort: L.E.
120 Beiträge
 
Delphi XE3 Professional
 
#2

AW: LZSS Kompressionsalgorithmus

  Alt 5. Sep 2011, 14:35
Diesen doch schon etwas älteren Algorithmus nutzen wir noch in unserer Software. Aktuell versuchen wir unsere Software auf 64-Bit umzustellen.

Die Low-Level Routinen sind ja alle in Assembler geschrieben. Ist jemandem vielleicht sogar eine Delphi anstatt Assembler Implementierung bekannt
Nein zumal LZSS Implementierung nicht gleich LZSS Implementierung sein muss und daher unklar ist was hier in Assembler geschrieben wurde.

Oder was genau ist zu beachten bei der Portierung des Assemblers (außer die Register selber)?
Die Aufrufkonventionen unterscheiden sich - sprich es werden andere Register für die Parameter verwendet. Bei 32-bit werden die ersten drei Parameter in den Registern EAX, EDX und ECX übergeben und bei 64-bit die ersten vier in den Registern RCX, RDX, R8 und R9.

Inline Assembler geht nicht
Delphi-Quellcode:
procedure Foo(AValue: Integer);
begin
  if AValue = 1 then
    asm
      nop
    end;
end;
Es sind nur reine Assembler und reine Delphi Language Methoden möglich.
  Mit Zitat antworten Zitat