at&t syntax

09/11/2011 21:53 Tyrar#1
hmmm... ich wusste zwar dass die at&t syntax (meiner meinung nach) nichts schönes is.... aber is die so anders?

Code:
__asm("mov eax, fs:[0x30]");
__asm("mov eax, [eax+0x08]");
__asm("mov edx, eax");
__asm("add eax, 0xeeeeeeee"); // platzhalter!
__asm("push eax");
hier bekomm ich fehler für: mov eax, [eax+0x08] - too many memory references for 'mov' | invalid char '[' beginning operand 2 '[eax+0x08]'

in visual studio läufts ohne probleme, der gcc stinkt da etwas ab! nur wie ist es richtig?
09/11/2011 22:13 SmackJew#2
Code:
__asm("mov eax, dword ptr fs:[0x30]");
__asm("add eax,  0x08");
__asm("mov eax, dword ptr [eax]");
__asm("mov edx, eax");
__asm("add eax, 0xeeeeeeee"); // platzhalter!
__asm("push eax");
09/11/2011 22:24 Tyrar#3
hm not worx... da bleibt immernoch der fehler too many memory references for mov.... bin mir auch nich sicher ob das mit dword ptr so passend is :|
09/11/2011 23:15 SmackJew#4
Quote:
Originally Posted by HeavyHacker View Post
bin mir auch nich sicher ob das mit dword ptr so passend is :|
Die sind da sehr wohl richtig.

[Only registered and activated users can see links. Click Here To Register...]
09/11/2011 23:50 Tyrar#5
ich glaub ich werd das alles extern regeln... mit masm war ich immer zufrieden :D
09/12/2011 17:47 Bot_interesierter#6
Soweit ich mich entsinne gibt es eine Compileroption damit GCC Intel-Syntax frisst, das wäre wesentlich weniger aufwändig als von Intel auf AT&T Syntax umzustellen, denn der ist wirklich sehr anders.
SmackJew hat übrigens nicht in AT&T Syntax übersetzt.
09/12/2011 18:19 .SkyneT.#7
Quote:
Originally Posted by Bot_interesierter View Post
Soweit ich mich entsinne gibt es eine Compileroption damit GCC Intel-Syntax frisst, das wäre wesentlich weniger aufwändig als von Intel auf AT&T Syntax umzustellen, denn der ist wirklich sehr anders.
SmackJew hat übrigens nicht in AT&T Syntax übersetzt.
-masm=intel
(bin mir aber nicht sicher ob es genau so geschriben wird :rolleyes: )
09/20/2011 18:25 Threk#8
Benutzt einfach AsmJit, wird dir einiges erleichtern^^
Ist ein sehr viel angenehmerer Syntax( an Intel angelehnt)
[Only registered and activated users can see links. Click Here To Register...]
09/21/2011 12:57 Tyrar#9
hm zu spät :D
hab jetz das komplette tool in nasm (is zwar auch etwas anders) geschrieben..