|
|
发表于 2025-4-1 15:22:51
|
显示全部楼层
MASM 编译时为何不生成中间文件(LST、CRF)?
在 DOSBox 中使用 masm ptest 命令编译汇编文件时,如果没有生成 LST(列表文件)和 CRF(交叉引用文件),可能是以下原因之一:
- 命令格式不完整:MASM 需要你在命令行中明确指定是否生成这些文件。比如在输入文件名后按回车,MASM 会提示你输入 LST 文件名和 CRF 文件名。如果你直接按回车跳过,它就不会生成。
- 没有使用完整的命令行参数:你可以使用如下命令强制生成 LST 文件:
- 分号的作用:在 DOS 下,分号 ; 表示“回车”,如果你在命令中加上分号,MASM 会自动跳过后续提示,默认不生成 LST 和 CRF 文件。
- MASM 版本差异:不同版本的 MASM 行为略有不同,有些版本默认不生成中间文件,除非你显式指定。
建议做法:
在 DOSBox 中运行 MASM 时,使用如下命令:
然后在提示输入 LST 文件名时,输入 ptest.lst,在 CRF 文件名提示时输入 ptest.crf,这样就能生成中间文件了。
如果你希望自动生成这些文件,也可以写一个批处理脚本来简化操作。需要的话我可以帮你写一个。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|