A
Size: a a a
DR
ST
DR
АМ
DB
АМ
DR
A
flat assembler version 1.73.25 (1048576 kilobytes memory)
error: code cannot be generated.
Больше всего от этот выколбашивает!EK
EK
DR
EK
DR
EK
EK
fix
(может, ещё что-то), потому equ, define, match, macro
, а потом уже код.if my_const = 1Потому что include будет включен на более раннем этапе.
include 'const.inc'
end if
EK
macro set nТо что запишется в ax?
{
a equ n*2;
}
x = 1
if x = 1
set 5
else if x = 2
set 3
else
set 0
end if
mov ax,a
x = 1Т.е. макросы раскроются ДО обработки if'ов.
if x = 1
a equ 10
else if x = 2
a equ 6
else
a equ 0
end if
mov ax,a
a equ 10Потому что equ обрабатывается раньше if'ов и кода.
a equ 6
a equ 0
x = 1
if x = 1
else if x = 2
else
end if
mov ax,a
mov ax,a
, т.е. 0.if
использовать match
, который может только строгое соответствие принять, нельзя проверить, что x <> 5 или x > 5, только x = 5, например. И то если 5 задано числом, а не x = 2+3.