2016-11-14 5 views
-3

Ich habe versucht, von einer Codezeile in c zu Assembly zu gehen, aber ich kann einfach nicht herausfinden, was die korrekte Übersetzung der Zeiger-zu-Mitglied-Funktion mit Asm sein würde. Hier ist ein Fragment des Codes:Zeiger auf Mitglied mit _asm

struct file{ 
int size; 
}FILE; 

void function(FILE *result){ 
result -> size; 
} 
+1

"Verwenden von asm" reicht nicht informativ, diese Frage zu beantworten - die Architektur? –

+3

'result-> size' ist natürlich' (* result) .size', was bedeutet, dass 'size' das erste Mitglied ist, ist nur' * result' und das ist eine einfache Dereferenzierung in welcher Architektur Sie auch verwenden. – Jester

+0

@Govind Parmar Ich benutze x86 – Dianagucor

Antwort

0

einen x86-64 Compiler Unter der Annahme, _function: ; rdi = pointer to struct file ; rax = size element mov eax, [rdi]

Verwandte Themen