Grundsätzliche Assemblerfragern!
-
Hallo @ All!
Assembler ist zurzeit absolutes Neuland ich hoffe ihr könnt mir ein paar Fragen dazu beantworten.
Wie bringe ich einen Wert in ein register rein?
Folgendes beispiel:Ich hab in C++ eine Variable:
int wert = 1234;Wie bekomme ich diesen wert in ein Register damit ich dann damit arbeiten kann?
Ich arbeite mit einen Inline Assembler in Eclipse.__asm__ __volatile__( );mfg
-
Assembler kann je nach Zielplattform (CPU) ziemlich unterschiedlich aussehen.
Wenn du zB. fuer einen x86 (PC, 32Bit) mit einem Intel-Syntax-Assembler programmierst, koennte das zB. so aehnlich aussehen:mov eax, [wert]eax ist ein Allzweckregister, eckige Klammern um den Variablennamen bedeuten einen Speicherzugriff.
-
Nobuo T schrieb:
Wenn du zB. fuer einen x86 (PC, 32Bit) mit einem Intel-Syntax-Assembler programmierst, koennte das zB. so aehnlich aussehen:
mov eax, [wert]ich würde sagen so: mov eax, 1234, also ohne die klammern (immediate adressing).

-
Ich hatte ihn so verstanden, dass er in seinem Stueck inline-Asm auf eine in c++ deklarierte Variable zugreifen wollte...

-
Nobuo T schrieb:
Ich hatte ihn so verstanden, dass er in seinem Stueck inline-Asm auf eine in c++ deklarierte Variable zugreifen wollte...

Hast schon richtig verstanden danke!