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

news2025/1/31 7:59:21

前言

        学习汇编语言时,需要进入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

 

2、DosBox安装

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

 

 

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 ”文件,双击(以记事本方式打开)。

(2)更改配置文件

在文件结尾处加上三行:

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

这三行文字的含义:

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

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

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

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

 

(3)检查是否配置成功

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

以看到,最后一行是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调试工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/924071.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SMOKE多模式排放清单处理技术及EDGAR/MEIC清单制作与VOCs排放量核算

1、掌握大气污染源排放清单不确定性来源及定量分析方法&#xff1b; 2、以VOCs排放为例&#xff0c;掌握排放源核算及组分清单建立方法; 3、掌握基于SMOKE模型的大气污染源排放清单处理技术方法&#xff1b; 4、掌握基于SMOKE的多模式排放清单输入制备方法&#xff1b;5、通过…

时序预测 | Matlab实现SO-CNN-BiGRU蛇群算法优化卷积双向门控循环单元时间序列预测

时序预测 | Matlab实现SO-CNN-BiGRU蛇群算法优化卷积双向门控循环单元时间序列预测 目录 时序预测 | Matlab实现SO-CNN-BiGRU蛇群算法优化卷积双向门控循环单元时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 时序预测 | Matlab实现SO-CNN-BiGRU蛇群算法优化…

基于web的成语接龙游戏java jsp趣味学习mysql源代码

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 基于web的成语接龙游戏 系统有1权限&#xff1a;管理…

可以在线做平面设计的软件推荐

互联网是一个视觉场所。如果你想拥有惊人的设计&#xff0c;你必须有专业的在线平面设计工具来帮助你。如今&#xff0c;市场上有大量的在线平面设计工具可供选择。他们提供的平面设计功能几乎可以让任何人成为视觉内容的创作者。但哪一个最适合你呢&#xff1f;本文将为您介绍…

如何理解α、β一类错误和二类错误?

原假设 H0&#xff1a;一般是想要推翻的结论&#xff0c;如指标没有变化&#xff0c;实验组和对照组的该结果指标没有差异等。 备择假设 H1&#xff1a;一般是想要证明的结论&#xff0c;如实验组的指标是显著提升的&#xff0c;指标提升10%等。 弃真错误/一类错误/显著性水平…

物业维修管理有什么好用的软件?“的修”报修工单系统有哪些优势?

随着城市化进程的加速&#xff0c;物业管理的重要性日益凸显。而在物业管理中&#xff0c;维修管理是必不可少的一环。为了更高效地处理业主的报修请求&#xff0c;“的修”报修工单系统应运而生。这款系统不仅方便实用&#xff0c;而且功能强大&#xff0c;为物业管理和业主带…

(四)k8s实战-服务发现

一、Service 1、配置文件 apiVersion: v1 kind: Service metadata:name: nginx-svclabels:app: nginx-svc spec:ports:- name: http # service 端口配置的名称protocol: TCP # 端口绑定的协议&#xff0c;支持 TCP、UDP、SCTP&#xff0c;默认为 TCPport: 80 # service 自己的…

基于el-scrollbar封装滚动条

Element UI中内置的滚动条插件el-scrollbar&#xff0c;但没有公示在文档中&#xff0c;这里基于它封装一个组件&#xff0c;提供回到顶部、滚动放向、最大高度功能。完整代码在最后。 基础结构 接收height属性&#xff0c;可以动态设置高度&#xff0c;默认是100% <templa…

合肥先进光源高速数据采集网的规划

合肥先进光源束测后台的初步设计&#xff0c;这里的网络相关的部分摘出来换个名字重新整理一下&#xff1a; 合肥光源中&#xff0c;没有把数据量大的设备比如摄像头、示波器规划进单独的网络&#xff0c;所有的设备都直接接入控制网&#xff0c;运行实践的过程中&#xff0c;有…

FreeSWITCH 1.10.10 简单图形化界面1 - docker/脚本/ISO镜像安装

FreeSWITCH 1.10.10 简单图形化界面1 - docker/脚本/ISO镜像安装 0. 界面预览1. Docker安装1.1 下载docker镜像1.2 启动docker镜像1.3 登录 2. 脚本安装2.1 下载2.2 安装2.3 登录2.4 卸载程序 3. 镜像安装3.1 下载镜像3.2 安装镜像3.3 登录 0. 界面预览 http://myfs.f3322.net…

c++使用zlib对字符串进行压缩和解压

官网下载zlib库编译后就能使用 #include <string> #include <iostream> #include <memory> #include <assert.h> #include <cstring> #include "zlib.h"#define CHUNK 16384/* Compress from file source to file dest until EOF on …

【MPC控制方法】

今天在读百度的MPC算法的代码。 研究对象 LQR的研究对象是现代控制理论中以状态空间方程形式给出的线性系统。MPC的研究对象可以是线性系统&#xff0c;也可以是非线性系统&#xff0c;只不过为了某些需求&#xff0c;如时效性&#xff0c;计算的便捷&#xff0c;操控性等&am…

pyside6常用组件的示例

pyside6常用组件的示例 一、制作界面 1.绘制界面 2.生成代码 # -*- coding: utf-8 -*-################################################################################ ## Form generated from reading UI file t1gui.ui ## ## Created by: Qt User Interface Compiler…

aws PinPoint发附件demo

php 版aws PinPoint发附件demo Laravel8框架&#xff0c;安装了"aws/aws-sdk-php": "^3.257" 主要代码&#xff1a; public function sendRawMail(Request $request) {$file $request->file(attachment);/*echo count($file);dd($file);*/$filenam…

软考信息安全工程师考前刷题、巩固基础 【必看!】

信息安全工程师&#xff08;第二版&#xff09;–1、网络信息安全概述 https://ks.wjx.top/vj/wLADwkY.aspx 信息安全工程师&#xff08;第二版&#xff09;–2、网络攻击原理与常用方法 https://ks.wjx.top/vj/eG4wyO0.aspx 信息安全工程师&#xff08;第二版&#xff09;…

YOLO目标检测——足球比赛中球员检测数据集下载分享

足球比赛中球员检测数据集&#xff0c;真实场景的高质量图片数据&#xff0c;数据场景丰富&#xff0c;图片格式为jpg&#xff0c;共500张图片 数据集点击下载&#xff1a;YOLO足球比赛中球员检测数据集500图片.rar

教你实现自动化测试

前言&#xff1a; &#x1f4d5;作者简介&#xff1a;热爱编程的小七&#xff0c;致力于C、Java、Python等多编程语言&#xff0c;热爱编程和长板的运动少年&#xff01; &#x1f4d8;相关专栏Java基础语法&#xff0c;JavaEE初阶&#xff0c;数据库&#xff0c;数据结构和算法…

视频云存储/安防监控/AI视频智能分析平台新功能:人员倒地检测详解

人工智能技术已经越来越多地融入到视频监控领域中&#xff0c;近期我们也发布了基于AI智能视频云存储/安防监控视频智能分析平台的众多新功能&#xff0c;该平台内置多种AI算法&#xff0c;可对实时视频中的人脸、人体、物体等进行检测、跟踪与抓拍&#xff0c;支持口罩佩戴检测…

YOLOv8教程系列:四、使用yolov8仓库训练自己的图像分类数据集(含推理预测)

YOLOv8教程系列&#xff1a;四、使用yolov8仓库训练自己的图像分类数据集&#xff08;含推理预测&#xff09; 0.引言 Yolov8是最新一代的You Only Look Once目标检测模型,它由Ultralytics研究团队在2022年开发。相比于之前的Yolo版本,Yolov8在速度和精度上都有很大的提升。 …

ARM开发,stm32mp157a-A7核SPI总线实验(实现数码管的显示)

1.目标&#xff1a; a.数码管显示相同的值 0000 1111 ......9999&#xff1b; b.数码管显示不同的值 1234&#xff1b; 2.分析m74hc595芯片内部框图&#xff1b; 真值表&#xff1a; 3.代码&#xff1b; ---spi.h头文件--- #ifndef __SPI_H__ #define __SPI_H__#include &quo…