Я знаю, что .code
используется для упрощения объявления сегмента кода в masm. Но мне нужно использовать полную форму декларации. Все дело в том, что это не работает для меня.
.386
.model flat, stdcall
option casemap : none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
SEGB SEGMENT PARA private 'data'
B dw 127
SEGB ends
SEGA SEGMENT PARA private 'data'
A dw 122
SEGA ends
SEGCODE SEGMENT PARA private 'code'
start:
ASSUME cs:SEGCODE, ds:SEGB, ss:nothing
mov ax, 0
mov ax, A
invoke ExitProcess,0
end start
SEGCODE ends
Я ожидаю, что это должно работать, но получил следующее сообщение: cannot have implicit far jump or call to near label
. Давка на линии invoke ExitProcess,0
. С .code
все работало нормально.