Strukturen in NASM
-
Ich hab mich mal mit Strukturen in NASM beschäftigt und bin mal wieder am Ende. Ich habe folgenden Strukturtyp deklariert:
struc GDTSTRUCT .limit: resw 1 .baseaddr: resd 1 endstruc
das klappt auch wunderbar, lässt sich kompilieren. Aber sobald ich eine Instanz der Struktur anlegen will meckert der Compiler:
global_table: istruc GDTSTRUCT at limit, dw 0x0000 at baseaddr, dd 0x00000000 iend
symbol 'limit' not defined
symbol 'baseaddr' not definedich habs auch schon mit .limit und .baseaddr versucht, aber der Compiler will den Code nicht. Ich hoffe, das jemand sowas schon mal gemacht hat...
[ Dieser Beitrag wurde am 20.03.2003 um 15:15 Uhr von hackbert editiert. ]
-
hmmm... ich weiß nicht, aber lass das "limit at, " und "at baseaddr, " mal weg...
cu todo
-
Hat sich erledigt, ich habe den Fehler gefunden. Man muss explizit den offset in der Struktur angeben:
struc GDTSTRUCT .limit: resw 1 .baseaddr: resd 1 endstruc global_table: istruc GDTSTRUCT at GDTSTRUCT.limit, dw 0x0000 at GDTSTRUCT.baseaddr, dd 0x00000000 iend