汇编语言调试工具:DosBox及debug安装配置使用教程

这篇具有很好参考价值的文章主要介绍了汇编语言调试工具:DosBox及debug安装配置使用教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

        学习汇编语言时,需要进入dos模式并使用debug工具调试。但是64位win10系统没有自带这些工具。因此,需要额外安装DosBox和debug.exe两个软件。本文介绍如何下载、安装、配置这两个工具软件。 

1、DosBox下载

简介

DOSBox 是一个 DOS 模拟程序,由于它采用的是 SDL 库,所以可以很方便的移植到其他的平台。DOSBox的最新版本已经支持在 Windows、Linux、Mac OS X、BeOS 、palmOS、Android 、webOS、os/2等系统中运行。

于 x86 架构的 DOS 模拟程序

点击DocBox官网下载

DOSBox, an x86 emulator with DOS

汇编语言调试工具:DosBox及debug安装配置使用教程,汇编,linux

2、DosBox安装

运行install程序,选择一个自己能找到的目录(接下来还要用到),安装即可。文件很小,无需担心空间问题。安装完之后桌面会有这样一个图标。

汇编语言调试工具:DosBox及debug安装配置使用教程,汇编,linux

3、下载、配置debug.exe

debug.exe简介

 Windows 操作系统自带的一个命令行调试工具,用于在 DOS 环境下进行汇编语言级别的调试操作。它可以让程序员以来自底层的方式逐步执行代码并检查每个寄存器中的值和内存地址。

3.1 下载debug.exe

这个程序不需要安装,下载之后就是一个debug.exe,直接就能运行。

下载地址

链接:https://pan.baidu.com/s/1j7o6dnH2Bmem3unRLWjmwA?pwd=zfjo 
提取码:zfjo 

3.2配置debug.exe和DosBox

这一步是要将debug.exe挂载到DosBox中,也就是让DosBox知道到哪里去找这个debug.exe。

(1)找到配置文件

进入DosBox安装目录,找到 “DosBox 版本号 Options.bat ”文件,双击(以记事本方式打开)。

汇编语言调试工具:DosBox及debug安装配置使用教程,汇编,linux

(2)更改配置文件

在文件结尾处加上三行:

MOUNT C 你的Debug.exe存放的目录
C:
debug

汇编语言调试工具:DosBox及debug安装配置使用教程,汇编,linux

这三行文字的含义:

第一行: mount 是挂载,个人理解为一种虚拟映射;C 是新的虚拟盘符;最后是你的Debug.exe存放的目录。

第二行:是指运行DosBox后进入C盘目录

第三行:这一行也可以去掉。(接下来会说到)

注意:你的Debug.exe存放的目录最好用英文双引号括起来 不容易不报错 

(3)检查是否配置成功

双击桌面图标,运行DosBox,如图。

汇编语言调试工具:DosBox及debug安装配置使用教程,汇编,linux

以看到,最后一行是C:\>debug,意思是已经进入了debug命令。如果上一步配置文件中没有写第三行“debug”,那么这里就要先写“debug”然后回车,就可以进入debug命令了。

光标处输入“d”后回车,若出现几行数据,则配置成功;若出现“illegal command ”,则配置失败,去看看上一步的配置文件是否写错了。

以后,只要运行DosBox,就可以直接使用debug调试工具了。

4、debug.exe使用命令介绍

命令:a

用法:a

用途:输入汇编命令,输完后不输入任何指令,直接回车即可退出编辑模式。

命令:d

用法:

  • d [起始位置]
  • d [起始位置] [结束位置]

用途:显示内存区域的内容。

命令:e

用法:

  • e [内存地址]
  • e [内存地址] '文本'

用途:修改指定内存区域的内容。

命令:g

用法:

  • g
  • g=[内存地址]

用途:连续执行内存代码,可以在 g 后面指定内存地址,若不指定则会从 CS:IP 处开始执行。

命令:h

用法:

  • h value1 value2

用途:该指令通常用于计算偏移量或地址范围,并且对于某些调试任务而言非常有用。但是如果需要更复杂的计算功能,建议使用图形用户界面(GUI)程序或其他计算器软件,如Windows系统中的计算器。

命令:q

用法:

  • q

用途:用于退出调试器并返回到操作系统命令行。

命令:r

用法:

  • r
  • r<寄存器/标志位>

用途:查看和修改寄存器和标志位的值

命令:t

用法:

  • t
  • t=[内存地址]

用途:执行位于 CS:IP 或者指定的内存地址处的指令并进行单步跟踪,

命令:u

用法:

  • u
  • u [偏移地址]
  • u [起始位置]

用途:用于在屏幕上显示从当前内存地址或者指定内存地址开始的几个汇编代码。

总结

本文介绍了64位win10系统下如何进入dos模式并使用debug调试工具。文章来源地址https://www.toymoban.com/news/detail-668789.html

到了这里,关于汇编语言调试工具:DosBox及debug安装配置使用教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 5.8 汇编语言:汇编高效除法运算

    通常情况下计算除法会使用 div/idiv 这两条指令,该指令分别用于计算无符号和有符号除法运算,但除法运算所需要耗费的时间非常多,大概需要比乘法运算多消耗10倍的CPU时钟,在Debug模式下,除法运算不会被优化,但Release模式下,除法运算指令会被特定的算法经过优化后转

    2024年02月11日
    浏览(44)
  • 汇编语言第一讲:计算机的组织架构和汇编语言介绍

    第一讲:计算机的组织架构和汇编语言介绍 汇编语言 计算机组织架构 数字电路 术语回顾 数制 数字电路 硬件电路 数字电路的问题 汇编语言的开始 程序的节(sections) 调用操作系统的系统调用 列出文件(Listing files) 汇编和链接 调试汇编程序 反汇编现有的程序 附录 课程资源

    2024年04月09日
    浏览(52)
  • 5.10 汇编语言:汇编过程与结构

    过程的实现离不开堆栈的应用,堆栈是一种后进先出 (LIFO) 的数据结构,最后压入栈的值总是最先被弹出,而新数值在执行压栈时总是被压入到栈的最顶端,栈主要功能是暂时存放数据和地址,通常用来保护断点和现场。 栈是由 CPU 管理的线性内存数组,它使用两个寄存器 (S

    2024年02月11日
    浏览(42)
  • 南京邮电大学汇编语言程序设计实验一(汇编语言语法练习与代码转换)

    排除语法错误:给出的是一个通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇编语言源程序,但有很多语法错误。要求实验者按照原样对源程序进行编辑,汇编后,根据TASM给出的信息对源程序进行修改,知道没有语法错误为止。然后进行链接,并执行相应可

    2024年02月08日
    浏览(62)
  • 低级语言汇编真的各个面不如汇编吗?

    今日话题,低级语言汇编真的各个面不如C语言吗?C语言因其可移植性、开发效率和可读性而在各领域广泛使用,市场占有率极高。然而,汇编语言在特定场景下仍然具有独特优势,稳固地占据一席之地。如果你对这方面感兴趣,我可以分享一套包含各类语言和嵌入式行业教

    2024年02月06日
    浏览(48)
  • 在C语言中调用汇编语言的函数

    在C语言中调用汇编文件中的函数,要做的主要工作有两个: 一是在C语言中声明函数原型,并加extern; 二是在汇编中用EXPORT导出函数名,并用该函数名作为汇编代码段的标识,最后用mov pc, lr返回。然后,就可以在C语言中使用该函数了。 从C语言的角度,并不知道该函

    2024年02月14日
    浏览(40)
  • 汇编语言学习笔记六

    CF:进位标志位,产生进位CF=1,否则为0 PF:奇偶位,如010101b,则该数的1有3个,则PF=0,如果该数的1的个数为偶数,则PF=1。 0也是偶数 ZF:在相关指令执行后(运算和逻辑指令,传送指令不影响ZF的值),其结果为0,则ZF=1,否则为0。 SF:符号标志位,如果结果为负,则SF=1,否则为

    2024年02月03日
    浏览(45)
  • 汇编语言学习笔记四

    字符是以ASCII码的形式存储的,一个字符对应着8为二进制数,2位16进制数。 所以可以得到对应的字符地址。 根据ASCII码,字符的大写和小写相差一个0010 0000,比如a对应的ASCII码是0110 0001,那么A则对应的是0100 0001,对比可以发现他们只是第5位不同,第5位为1,则是小写,否则

    2024年02月03日
    浏览(64)
  • 汇编语言实验——大数相乘

    1.1实验内容 实现两个十进制大整数的相乘(100位以上),输出乘法运算的结果。 1.2实验环境 Microsoft Visual Studio 2017+masm 32 1.3实验思路 1.3.1数据读入 大数相乘由于输入的数字过大而不能用一个dword来存储,所以需要使用数组来存取每一位,每一位大小范围在0-9中,按位读取输入

    2024年02月09日
    浏览(47)
  • ARM汇编语言(2)

    ARM汇编语言是一种低级别的计算机指令集架构(ISA)语言,它是ARM处理器上的一种指令集架构,用于编写底层的系统软件,例如操作系统、驱动程序和嵌入式系统应用程序。 ARM汇编语言使用基于寄存器的指令集,其中指令操作的数据通常存储在处理器的寄存器中,而不是内存

    2024年02月02日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包