Странная ошибка компиляции с компилятором NASM
Я официально поставлен в тупик... Я получаю странную ошибку при компиляции .ASM
файл... почему-то строка mov bx, word [w1]
заставляет компилятор сказать следующее: error: invalid effective address
, Тем не менее, линия перед ним, mov ax, word [w0]
компилирует просто отлично. Я подумал, что, может быть, это проблема с тем, как я определил w1, поэтому я оглянулся назад и обнаружил, что я определил, что и w0, и w1 были абсолютно идентичны минус метка: w0 dw 0
а также w1 dw 0
, Я понятия не имею, что это вызывает! Итак, вот источник, если вы хотите попробовать скомпилировать его сами...
BITS 16
ORG 32768
w0 dw 0
w1 dw 0
w2 dw 0
os_drawbg equ 002Ah
drawbg:
mov ax, word [w0]
mov bx, word [w1]
mov cx, word [w2]
call os_drawbg
ret
В любом случае, мой вопрос, что является причиной этого, и как бы я решил эту проблему?
Изменить: Полный код можно найти здесь: http://pastebin.com/NFqcDnhZ