You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DosBox执行TASM命令报“Unexpected end of file”错误求助

解决TASM编译时"Unexpected end of file encountered"错误

你在DosBox执行命令:

tasm /zi base.asm

遇到错误:

Fatal base.asm(7) Unexpected end of file encountered

你的汇编代码:

IDEAL
MODEL small
STACK 100h
DATASEG
var db ?
CODESEG
start:
    mov ax, @data
    mov ds, ax
    mov [var], 5
exit:
    mov ax, 4c00h
    int 21h
END start

这个错误看起来代码逻辑没问题,但大概率是文件格式或编码不兼容导致的——TASM对DOS标准的文本格式要求很严格,给你几个具体的排查和解决方向:

  • 调整文件编码与换行格式:TASM只支持ANSI编码+CRLF(DOS换行)的文件。如果你的代码是UTF-8编码(尤其是带BOM头的)或使用LF(Unix换行),会导致编译器解析异常,误以为文件提前结束。用记事本打开代码后,点击「另存为」,编码选择「ANSI」,保存后重新编译。
  • 检查文件末尾的异常字符:部分编辑器可能会在文件末尾插入不可见的控制字符,或者你保存时未完整写入最后一行。可以用十六进制编辑器打开文件,确认END start这一行完整,行尾是0D 0A的DOS换行符,文件末尾没有乱码或多余字符。
  • 重新手动保存代码:偶尔编辑器会出现保存bug,你可以新建一个空白文件,手动重新输入所有代码(避免直接复制粘贴可能带的格式问题),保存为ANSI编码的asm文件后再尝试编译。

按以上方法调整后,重新执行编译命令应该就能正常通过了。

内容的提问来源于stack exchange,提问作者Michal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 10:20:38