Forum: Object-Pascal / Delphi-Language
Delphi
by jaenicke,
26. Mai 2011
Mnemonics sind die für den Menschen lesbaren Befehle wie MOV oder ADD. Stattdessen wurden vorher die Zahlen direkt geschrieben, aber das war halt irgendwie unpraktisch. Deshalb wurden als Gedächtnisstützen (daher mnemonics) MOV, ADD usw. eingeführt, die der Assembler (also das Tool, das die übersetzt) erst in die entsprechenden Zahlen umwandelt.
Forum: Object-Pascal / Delphi-Language
Delphi
by jaenicke,
26. Mai 2011
Richtig, das sind Assemblerbefehle. Die werden an die neu reservierte Speicherstelle geschrieben, die dann als Prozedurpointer als Callback übergeben wird. Daraufhin wird dann beim Aufruf des Callbacks genau dieser Code ausgeführt.
// EDIT:
Die Befehle im Originalkommentar sind übrigens die Mnemonics zu den Befehlen, die da geschrieben werden, die hätte ich vielleicht wieder übernehmen...
Forum: Object-Pascal / Delphi-Language
Delphi
by jaenicke,
26. Mai 2011
Schau dir einfach einmal den generierten Assemblercode an. ;-)
Aber davon abgesehen verstehe ich auch nicht wirklich was da Assembler verloren hat. Sinnvoller wäre dort sowieso reiner Object Pascal Code, dann gibt es da auch keine solchen Probleme:function MakeProcInstance(const M: TMethod): Pointer;
begin
GetMem(Result, 7 + 2 * SizeOf(Pointer));
PByte(Result)^ := $B9;
...