Ошибка A2105 : Ожидается : инструкция или директива Сборка

Я делаю простую программу сообщений, используя MASM. В настоящее время я запускаю DOSBOX на 64-разрядной версии Windows 8. У меня была папка 8086, содержащая исполняемые файлы DEBUG, BIN2HEX, EDIT, EXE2BIN, LINK, MASM, TASM и TD. MASM отличается от команд ML.

Вернемся к моему вопросу, когда я пытался использовать masm Hello.asm. У меня Error A2105 : Expected : instruction or directive. Я использую некоторые директивы в своих кодах.

Hello.asm

.386
.model flat, stdcall
option casemap: none

extrn MessageBoxA@16 : PROC
extrn ExitProcess@4 : PROC

.data
    HelloWorld db "Welcome to Assembly Language!", 0
    MsgTitle db "Our First MessageBox", 0
.code
start:

    mov eax,0
    push eax
    lea ebx , MsgTitle
    push ebx
    lea ebx, HelloWorld
    push ebx
    push eax
    call MessageBoxA@16
    push eax
    call ExitProcess@4

end start

Я понятия не имею, как создать OBJ, LST, CRF из этого asm. Поэтому я просто пропускаю их обоих.

Object filenam [hello.OBJ] :
Source listing [NUL.LST]:
Cross-reference [NUL.CRF]:
hello.asm(3): error 2105 : Expected : instruction or directive

person user3138965    schedule 11.01.2014    source источник
comment
Какую версию MASM вы используете?   -  person Michael    schedule 11.01.2014
comment
когда masm спрашивает вас о .obj, .lst и .crf, он должен генерировать их, вам не нужно их предоставлять   -  person Seki    schedule 11.01.2014


Ответы (2)


MASM не знаю но из сообщения об ошибке видно что ассемблер не считает эту строку

option casemap: none

в качестве действительной инструкции или директивы. Поэтому вам следует проверить, используете ли вы правильный формат. Возможно, вам нужно убрать пробел после точки с запятой. В любом случае вы можете просто удалить его из программы, чтобы скомпилировать код.

person Vlad from Moscow    schedule 11.01.2014

Инструкция или директива option casemap: none недействительна в вашей версии masm. поэтому вам следует проверить это, если вы не знаете, зачем использовать option casemap: none, возможно, вы можете удалить его, и тогда вы сможете правильно скомпилировать код.

person douyu    schedule 23.04.2019