Moin,
ich habe mal eine Frage zur Assemblerprogrammierung mit Xcode. Benutzt
Xcode Intel oder AT&T Syntax?
Ich möchte zuerst mal ein einfaches Programm zum Laufen kriegen, das
einfach eine Variable in Assembler inkrementiert, also irgendwie so:
1 | int main()
|
2 | {
|
3 | int a=1;
|
4 | asm("mov ax,%0":"=i"(a)); //a nach eax kopieren, "=i" richtig für int?
|
5 | asm("inc ax");
|
6 | asm("mov %0,ax":"=i"(a)); //eax nach a zurückschieben
|
7 | cout<<a; //Soll 2 ausgeben
|
8 | return 0;
|
9 | }
|
Es ist länger her, dass ich Assembler programmiert habe, aber soweit ich
weiß, sollte es so sinngemäß funktionieren. Ich weiß aber halt nicht,
wie ich die C-Variablen in den Assembler bekomme. Dazu habe ich ein paar
Tutorial gefunden, aber die zeigen nur bestimmte Beispiele, zum Beispiel
mit "fsin" und wenn ich versuche diese Beispiele anzupassen (wie oben),
gibt es Compilerfehler. Ich hoffe, es sieht nicht so aus, als ob ich
nicht gesucht hätte, aber ich habe nichts gefunden, was mir dieses
einfache Problem löst. Ist übrigens ein Alu MacBook mit Mac OS X 10.6
und Xcode 3.0