1-3、DOSBox环境搭建

2023-11-30 23:36
文章标签 搭建 环境 dosbox

本文主要是介绍1-3、DOSBox环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

语雀原文链接

文章目录

    • 1、安装DOSBox
    • 2、Debug
      • 进入Debug
      • r
      • d
      • e
      • a
      • u
      • t
      • q

1、安装DOSBox

  • 官网下载下载地址:https://www.dosbox.com/download.php?main=1
  • 此处直接下载这个附件(内部有8086的DEBUG.EXE环境)8086汇编工作环境.rar
  • 执行安装DOSBox0.74-win32-installer.exe,安装完成打开应用出现以下界面

image.png

  • 将MASM拷贝到非C盘的目录下,例如此处是d:\IT\MASM

image.png

  • 在DOSBox的串口输入以下命令(d:\IT\MASM 和上一步复制的目录是一样的),出现上图中的字符表示成功
// 这里大致意思就是将这个d:\IT\MASM目录作为c盘挂载起来
C:\>mount c d:\IT\MASM
Drive C is mounted as local directory d:\IT\MASM\C:\>c:C:\>debug
  • Mac系统下也是一样的操作

截屏2023-11-30 22.32.04.png

2、Debug

  • 使用Debug程序,可以查看CPU各种寄存器中的内容、内存的情况,并且在机器指令级跟踪程序的运行
  • R命令:查看、改变CPU寄存器的内容
  • D命令:查看内存中的内容
  • E命令:改变内存中的内容
  • U命令:将内存中的机器指令翻译成汇编指令
  • A命令:以汇编指令的格式在内存中写入机器指令
  • T命令:执行机器指令

进入Debug

  • 实际就是运行D:\IT\MASM\DEBUG.EXE

image.png

r

  • 写法1:-r
  • 作用:查看寄存器内容

image.png

  • 写法2:-r 寄存器名字
  • 作用:改变寄存器内容

截屏2023-11-30 22.40.18.png

d

  • 写法1:-d
  • 作用:查看预设地址内存处128个字节的内容
    • 2000:0080,段地址2000,偏移地址0080,表示的物理地址是20080
    • 2000:0090,表示的物理地址是20090
    • 这两行之间有16个内存单元(20080~2008F),每个内存单元一个字节,8位二进制,2位16进制,就是第一行16个字节的00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00

截屏2023-11-30 22.43.18.png

  • 写法2:-d 段地址:偏移地址
  • 作用:查看指定地址的内容,此处查看的是2222的内容,前面的两个2220 2221显示空了

截屏2023-11-30 22.45.00.png

  • 写法3:-d 段地址:偏移地址开始 偏移地址结束
  • 作用:查看指定地址范围的内容

截屏2023-11-30 22.45.41.png

  • 写法4:连续使用d
  • 作用:可以列出后续的内容

image.png

e

  • 用法1:-e 段地址:偏移地址 数据1 数据2
  • 作用:批量修复数据

image.png

  • 用法2:-e 段地址:偏移地址
    • 逐个询问式修改
    • 空格表示接受,继续修改
    • 回车表示结束
  • 作用:逐个修改数据

image.png

  • 用法3:写入字符

image.png

  • 用法3:写入字符串

image.png

a

  • 写法1:-a 段地址:偏移地址
  • 作用:以汇编指令的格式在内存中写入机器指令
  • 此处写入的地址是:073f:0100,对应CS IP
    • mov ax,0123
    • mov bx,0003
    • mov ax,bx
    • add ax,bx

image.png

u

  • 写法1:-u 段地址:偏移地址
  • U命令:将内存中的机器指令翻译成汇编指令

截屏2023-11-30 22.54.51.png

t

  • 写法:-t
  • 作用:执行CS:IP处的指令,逐条执行,每执行一条,IP寄存器偏移一次
  • 执行上述的几条命令
    • mov ax,0123
    • mov bx,0003
    • mov ax,bx
    • add ax,bx

image.png

q

  • 退出debug

image.png

这篇关于1-3、DOSBox环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/438964

相关文章

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Pytest多环境切换的常见方法介绍

《Pytest多环境切换的常见方法介绍》Pytest作为自动化测试的主力框架,如何实现本地、测试、预发、生产环境的灵活切换,本文总结了通过pytest框架实现自由环境切换的几种方法,大家可以根据需要进... 目录1.pytest-base-url2.hooks函数3.yml和fixture结论你是否也遇到过

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

VSCode配置Anaconda Python环境的实现

《VSCode配置AnacondaPython环境的实现》VisualStudioCode中可以使用Anaconda环境进行Python开发,本文主要介绍了VSCode配置AnacondaPytho... 目录前言一、安装 Visual Studio Code 和 Anaconda二、创建或激活 conda

pytorch+torchvision+python版本对应及环境安装

《pytorch+torchvision+python版本对应及环境安装》本文主要介绍了pytorch+torchvision+python版本对应及环境安装,安装过程中需要注意Numpy版本的降级,... 目录一、版本对应二、安装命令(pip)1. 版本2. 安装全过程3. 命令相关解释参考文章一、版本对