所以我尝试使用宏但它击败了我。我做了一个包含本地宏的程序并且工作正常,然后我尝试将宏放入宏库并将其包含在INCLUDE "name"
中并且它一直告诉我"无法定位。文件"
以下是我写作的方式:
include "C:\Downloads\pla\tasm\macros.asm"
data segment para public 'data'
data ends
code segment para public 'code'
start proc far
assume ds:data, cs:code
push ds
xor ax,ax
push ax
mov ax,data
mov ds,ax
Position 7,8
ret
start endp
code ends
end start
宏将保存为macros.asm
,其中包含:
Position MACRO Row, Column
PUSH AX
PUSH BX
PUSH DX
MOV AH, 02H
MOV DH, Row
MOV DL, Column
MOV BH, 0
INT 10H
POP DX
POP BX
POP AX
ENDM
我错过了什么吗?我应该在定义之外写点什么吗?
答案 0 :(得分:1)
看起来你正在使用TASM,默认情况下,include的语法没有引号as per the TASM User's Guide, page 37 (Using INCLUDE files)。
尝试
include C:\Downloads\pla\tasm\macros.asm
而不是
include "C:\Downloads\pla\tasm\macros.asm"
答案 1 :(得分:0)
发现答案:看起来我正在走错路。我正在使用dosbox而不是我在计算机中看到的路径,我应该估算出虚拟磁盘的路径。