DOSBOX怎么使用 从编译到连接到执行操作全过程 + debug

DOSBOX使用 从编译到连接到执行操作全过程

(前提声明,如果发现哪个步骤执行不下去,很可能是文件没配置好。)

  1. 将文件放到目录下,如下,一定要包含LINK.EXE和MASM.EXE文件,这个文件是需要自己找的。这位博主给大家提供了链接可以下载
    在这里插入图片描述
  2. 按照目录,如下操作。

在这里插入图片描述

  1. 编译
    首先将写好的.asm文件放入目录中
    我的EXAM.ASM如下
    在这里插入图片描述
    在这里插入图片描述
    这里需要输入asm文件名
    或者直接 masm EXAM.asm
    在这里插入图片描述
    其他的都是一些中间文件或目前不必要的文件,可以直接enter。
    发现no errors 就编译成功了。

  2. 连接

输入link
在这里插入图片描述
连接的作用很重要,之后多文件编译,需要将程序连接在一起,生成一个可执行的文件,就需要用到link连接。

  1. 执行
    连接后,生成了exam.exe文件,

在这里插入图片描述
这时候输入exam或者exam.exe即可执行。
发现输出了个A

  1. 输入和输出?

键盘输入
调用方法: MOV AH,01H
INT 21H
功能: 从键盘上接收一个字符,并在屏幕上显示出来。
入口条件: 无
出口条件: 键入字符的ASCII码在AL中。

显示器输出
调用方法: MOV AH,02H
INT 21H
功能: 在屏幕上光标处显示一个字符。
入口条件: 要显示的字符的ASCII码在DL中。
出口条件: 字符显示在屏幕上。
例: 在屏幕上显示A,用下述程序段实现:
MOV DL,”A”
MOV AH,02H
INT 21H
注意,使用这个功能调用后,AL的内容将被改变。

所以如果在执行exe之后发现程序中什么都没显示,那只是因为你没有写显示的程序。程序肯定是执行了的,这个不必担心。

  1. 输入edit,进行文件编辑
    出现如下界面
    在这里插入图片描述
    然后edit进去之后,鼠标不见了,怎么退出把鼠标恢复。
    ctrl+(Fn)f10

Alt+Enter可以切换全屏。
在这里插入图片描述
这里点save as 就可以保存文件。

  1. 文件跟踪
    debug
    -g 执⾏完exe运⾏结果显⽰
    -a 编写汇编命令
    -t 单步执⾏
    -p 直接执⾏完不是单步执⾏
    -u 反编译
    -r 查看修改寄存器的值
    -d 查看内存单元
    -e 修改内存单元
    -? 查看指令帮助
    -q 退出

如下输入debug exam.exe,最好输全了!
在这里插入图片描述

在进行 -t 单步执行的时候,最后遇到 INT 21H 记得-q退出。否则继续-t可能会出问题。
在这里插入图片描述
在这里插入图片描述
CS比DS多10H。
程序段前缀 有关。

学会了怎么使用DOSBOX之后,才能方便我们之后的学习。

  • 48
    点赞
  • 397
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
DOSBox中的debug命令是一个简单的汇编器,可以用来创建和修改8086汇编程序。以下是在DOSBox使用debug命令的基本步骤: 1. 打开DOSBox,输入debug命令,按回车键进入debug模式。 2. 在debug模式下,可以使用以下命令: - a:将程序附加到内存中。 - e:修改内存中的字节。 - d:显示内存中的字节。 - g:开始执行程序。 - u:反汇编程序。 - r:查看和修改CPU寄存器的值。 - t:执行单步调试。 - p:将程序保存到文件中。 3. 使用“a”命令将程序附加到内存中。例如,要将程序加载到100H地址,可以输入“a 100”。 4. 使用“e”命令修改内存中的字节。例如,要将地址为100H的字节设置为0,可以输入“e 100 0”。 5. 使用“g”命令开始执行程序。例如,要从地址为100H开始执行程序,可以输入“g 100”。 6. 使用“u”命令反汇编程序。例如,要反汇编从地址为100H开始的程序,可以输入“u 100”。 7. 使用“r”命令查看和修改CPU寄存器的值。例如,要查看AX寄存器的值,可以输入“r ax”。 8. 使用“t”命令执行单步调试。例如,要单步执行程序,可以输入“t”。 9. 使用“p”命令将程序保存到文件中。例如,要将从地址为100H开始的程序保存到文件test.com中,可以输入“p test.com 100”。 以上就是在DOSBox使用debug命令的基本步骤。需要注意的是,debug命令对于不熟悉汇编语言的用户来说可能比较困难,因此需要一定的学习和实践。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值