Парсер: инструкция ожидала ошибки при компиляции сборки Intel с NASM

Может кто-нибудь сказать мне, почему эти ошибки происходят? Я довольно новичок в сборке, и у меня есть некоторые проблемы при компиляции файла.

Я попытался скомпилировать его в NASM со следующим кодом в Debian:

nasm -f elf codeasm.asm -o codeasm.o

и я получаю следующие ошибки:

codeasm.asm:2: error: parser: instruction expected
codeasm.asm:3: error: parser: instruction expected
codeasm.asm:5: error: label or instruction expected at start of line
codeasm.asm:6: warning: Unknown section attribute 'public' ignored on  declaration of section `para'
codeasm.asm:6: warning: Unknown section attribute ''data'' ignored on declaration of section `para'    
codeasm.asm:10: error: parser: instruction expected
codeasm.asm:11: error: parser: instruction expected
codeasm.asm:12: error: parser: instruction expected
codeasm.asm:13: error: parser: instruction expected
codeasm.asm:14: error: parser: instruction expected
codeasm.asm:15: error: parser: instruction expected
codeasm.asm:16: error: parser: instruction expected
codeasm.asm:20: error: parser: instruction expected
codeasm.asm:21: error: parser: instruction expected
codeasm.asm:23: error: symbol `dseg' redefined
codeasm.asm:23: error: parser: instruction expected
codeasm.asm:28: warning: Unknown section attribute 'public' ignored on declaration of section `para'
codeasm.asm:28: warning: Unknown section attribute ''indata'' ignored on declaration of section `para'

Для следующего кода в сборке Intel синтаксис (только первые несколько строк):

                    xlist
            include         stdlib.a
            includelib      stdlib.lib
            list
            286
dseg            segment para public 'data'

h               word    ?
i               word    ?
j               word    ?
k               word    ?
l               word    ?
sum             word    ?
iterations      word    ?

InName          byte    "file1.raw",0
OutName         byte    "file2.raw",0

dseg            ends

InSeg           segment para public 'indata'

DataIn          byte    251 dup (256 dup (?))

InSeg           ends

OutSeg          segment para public 'outdata'

DataOut         byte    251 dup (256 dup (?))

OutSeg          ends

Мне сказали, что этот код работает правильно.

0 ответов

Другие вопросы по тегам