22. November 2024, 02:29
Willkommen
Gast
. Bitte
einloggen
oder
registrieren
.
Hast du deine
Aktivierungs E-Mail
übersehen?
Übersicht
Wiki
Hilfe
Suche
Einloggen
Registrieren
Lowlevel
»
Lowlevel
»
OS-Design
»
Thema:
Parameter pushen im Longmode
« vorheriges
nächstes »
Drucken
Seiten: [
1
]
Autor
Thema: Parameter pushen im Longmode (Gelesen 4823 mal)
Martin Erhardt
Beiträge: 165
Gespeichert
«
am:
04. January 2013, 23:24 »
Parameter pushen im Longmode
Guten Abend,
In den Tuts wird gerne mal ein Paramater auf den gepusht wenn eine Funktion von Assembler ausgerufen wird.
Geht das im Long Mode auch? Ich habe gehört da übergibt man Parameter gerne über Register.
https://github.com/MartinErhardt/Lizarx
Jidder
Administrator
Beiträge: 1 625
Gespeichert
«
Antwort #1 am:
04. January 2013, 23:39 »
Re: Parameter pushen im Longmode
Das stimmt. Wie genau die Parameter übergeben werden, ist von der ABI abhängig. Für ELF ist das hier in Kapitel 3.2.3 beschrieben:
http://math-atlas.sourceforge.net/devel/assembly/abi_sysV_amd64.pdf
Die Reihenfolge der Register ist rdi, rsi, rdx, rcx, r8, r9.
Im Zweifelsfall kannst du dir auch anschauen, welchen Code der Compiler für den Funktionsaufruf erzeugt, wenn du eine Objektdatei disassemblierst.
Dieser Text wird unter jedem Beitrag angezeigt.
Drucken
Seiten: [
1
]
« vorheriges
nächstes »
Lowlevel
»
Lowlevel
»
OS-Design
»
Thema:
Parameter pushen im Longmode
Einloggen
1 Stunde
1 Tag
1 Woche
1 Monat
Immer