BobNUPT
2017-03-15 13:16
采纳率: 100%
浏览 2.1k
已采纳

DOS系统下.exe文件转.com文件

在DOS系统下编写了helloworld程序,使用masm进行编译,link进行链接得到了exe文件,想通过exe2bin进行转换,结果显示不成功。原因因该是源程序中使用了DATA数据段和CODE代码段,不止一个SEGMENT了。想知道有什么办法可以解决这个问题吗?
代码:

 .386
DATA    SEGMENT USE16
MSG DB 'HelloWorld!$'
DATA    ENDS

CODE    SEGMENT USE16
    ASSUME CS:CODE,DS:DATA
BEG:    MOV AX,DATA
    MOV DS,AX
    MOV DX,OFFSET MSG
    MOV AH,9
    INT 21H
CODE    ENDS
    END BEG

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 枫舞的季节 2017-03-16 01:07
    已采纳

    把 msg 移到 code 段中,
    jmp xxx
    msg db 'hello$'
    xxx:
    这样就不用 data段了。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • devmiao 2017-03-15 15:55
    评论
    解决 无用
    打赏 举报
  • weixin_46240072 2020-03-08 12:58

    com文件只有一个段。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题