Почему YASM не не распознает ключевое слово «смещение»?
Вопрос
Я пытаюсь компилировать Небесные ворота :
yasm-1.2.0-win64.exe "Heaven's Gate.asm"
.
с кодом ниже:
global main
section .text
main:
bits 32
db 9ah ;call 33:in64
dd offset in64
dw 33h
;32-bit code continues here
bits 64
in64:
gs mov rax, qword [30h] ;gs not fs
mov rax, qword [rax+60h]
mov rax, qword [rax+18h]
mov rax, qword [rax+30h]
mov rax, qword [rax+10h]
bits 32
retf
.
Но Язм говорит мне:
Heaven's Gate.asm:6: error: undefined symbol `offset' (first use)
Heaven's Gate.asm:6: error: (Each undefined symbol is reported only once.)
.
не offset
ключевое слово?Почему я получаю эту ошибку?
Решение
offset is superfluous in yasm/nasm syntax. Remove them, as the label itself stands for its offset.
Не связан с StackOverflow