PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [GNU-ASM] Offset und Segment?



hackbert
03-10-2005, 18:27
Moin!
Ich muss gerade 16bit-Code in Assembler schreiben und will dafür den GAS (GNU-Assembler) verwenden. Das mit den 16bit funktioniert soweit. Leider fehlen mir die aus anderen assemblern bekannten Direktiven SEG und OFFSET mit deren Hilfe sich das Segment bzw. der Offset einer Variablen im Speicher bestimmen lässt. Kennt jemand die Anweisung im GNU-Assembler?

Joghurt
03-10-2005, 20:06
Die Variablen sind ja nichts anderes als Zeiger:

mov foo,%axlädt den Wert auf den foo zeigt, nach ax. Intel-Syntax: mov ax,foo

mov $foo,%axlädt den Wert, den foo hat (adresse), nach ax.
Intel-Syntax: mov ax,offset foo