Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Assembler - SetLength und Dyn. Arrays (https://www.delphipraxis.net/86646-assembler-setlength-und-dyn-arrays.html)

Neutral General 16. Feb 2007 20:02


Assembler - SetLength und Dyn. Arrays
 
Hi,

Gegeben sei

1.
Delphi-Quellcode:
TIntArray: Array of Integer;
und

2.
Delphi-Quellcode:
function Bla: TIntArray;
Meine Fragen:
1. Wie kann ich die Länge mithilfe von SetLength setzen?
2. Und wie kann ich die Länge ermitteln?

Meine Versuche:

1.
Delphi-Quellcode:
// gibt eine AV!
 mov eax,Result
 mov edx,Länge
call System.@SetLength
2.
Delphi-Quellcode:
// Länge steht in eax? Gibt aber auch ne AV..
mov eax,Result
mov eax,[eax-4]
Wäre nett wenn mich jemand aufklären könnte ;)

Gruß
Neutral General

SirThornberry 16. Feb 2007 20:18

Re: Assembler - SetLength und Dyn. Arrays
 
schreib es doch einfach erstmal als Delphicode und lass dir dann das CPU-Fenster anzeigen wo der ASM-Code drin steht.

Neutral General 16. Feb 2007 20:38

Re: Assembler - SetLength und Dyn. Arrays
 
Ja also Length(Array) geht schonmal.. aber SetLength scheint nicht zu gehn.. in welches Register muss ich denn die Länge schreiben? In EDX doch eigentlich oder? -.-


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz