当前位置: 首页 > news >正文

【汇编语言特别篇】DOSBox及常用汇编工具的详细安装教程

文章目录

  • 📋前言
  • 一. ⛳️dosbox的介绍、下载和安装
    • 1.1 🔔dosbos简介
    • 1.2 🔔dosbox的下载
      • 1.2.1 👻方式一:官网下载(推荐)
      • 1.2.2 👻方式二:网盘安装包
    • 1.3 🔔dosbox的安装
    • 1.4 🔔窗口的调整
  • 二. ⛳️配置汇编工具
    • 2.1 🔔主要汇编工具的简单介绍(简单了解即可)
      • 2.1.1 👻debug.exe简介
      • 2.1.2 👻MASM.EXE简介
      • 2.1.3 👻LINK.EXE简介
    • 2.2 🔔下载
    • 2.3 🔔配置
  • 📝总结

📋前言

🏠 个人主页:@聆风吟的个人主页
🔥系列专栏:本期文章收录在专栏《汇编语言》中,大家有兴趣可以浏览和关注,后面将会持续更新更多精彩内容!

⏰寄语:少年有梦不应止于心动,更要付诸行动。
🎉欢迎大家关注🔍点赞👍收藏⭐️留言📝
🌈作者留言:文章创作不易,可能会有些地方出现错误,还希望广大读者们能够帮忙指出,让我们大家一起共同进步。



一. ⛳️dosbox的介绍、下载和安装

1.1 🔔dosbos简介

DOSBox是一款开源的DOS模拟器,可以在现代操作系统上运行DOS程序和游戏。其特点是支持多种操作系统,包括Windows、macOS、Linux和FreeBSD等,同时还能够提供高度的兼容性和可定制性,包括CPU速度模拟、硬盘驱动器仿真、音频和视频仿真等。DOSBox还支持虚拟机的快照和还原,方便用户在程序运行过程中保存和恢复状态。作为一款流行的DOS模拟器,DOSBox也被广泛用于游戏开发、编程和历史研究等领域。


1.2 🔔dosbox的下载

1.2.1 👻方式一:官网下载(推荐)

⌈点击此处跳转官网下载,博主亲试无风险⌋

在这里插入图片描述

1.2.2 👻方式二:网盘安装包

网盘链接:
https://pan.baidu.com/s/1GdStfwFZ_ud2z6gbbHx3ow?pwd=190s
提取码:190s


1.3 🔔dosbox的安装

  1. 1️⃣首先找到你下载的安装包的位置,双击进入安装。
    在这里插入图片描述

  2. 2️⃣进入安装界面点击下一步。
    在这里插入图片描述

  3. 3️⃣继续点击下一步。
    在这里插入图片描述

  4. 4️⃣在这里作者建议你更改下文件安装位置,方便以后的管理。操作完之后点击安装即可。
    在这里插入图片描述

  5. 5️⃣最后关闭安装窗口,在你的桌面就会出现该软件图标。
    在这里插入图片描述
    在这里插入图片描述

  6. 6️⃣双击图标,即可打开程序,以下是作者的软件运行效果展示图。
    在这里插入图片描述

1.4 🔔窗口的调整

大家可以看到上面编写程序的窗口实在是太小了,有同学该问了可不可以调整下大小呢?当然是可以的啦,下面就让我来介绍一下,如果有同学觉得窗口大小无需调节,跳过此步骤即可。

  1. 1️⃣首先找到你下载文件的位置,双击进入下面文件中。
    在这里插入图片描述

  2. 2️⃣进入之后找到windowresolution = originaloutput = surfuce分别修改为windowresolution = 1280X1080output = opengl然后保存(快捷键:Ctrl + s)即可。
    在这里插入图片描述

  3. 3️⃣修改好后,重新打开doscox,便可以看到窗口已经变大。
    在这里插入图片描述



二. ⛳️配置汇编工具

2.1 🔔主要汇编工具的简单介绍(简单了解即可)

2.1.1 👻debug.exe简介

debug.exe(用于调试)是一款Windows系统自带的命令行工具,可以用于汇编语言程序的调试和测试。它可以将机器语言指令以16进制的形式输出,也可以在程序运行时进行单步调试,查看程序状态、变量值等信息。此外,debug.exe还可以读写磁盘扇区,以及实现一些简单的系统管理功能。由于debug.exe是命令行工具,使用时需要熟悉相关命令和参数。


2.1.2 👻MASM.EXE简介

MASM.EXE(用来编译)是Microsoft Macro Assembler的可执行文件,是一款用于汇编语言编程的软件。它是一款非常老的软件,可以在DOS操作系统和早期的Windows系统上运行。MASM.EXE支持Intel x86的汇编语言,并且可以生成可执行文件、OBJ文件以及LIB库文件。MASM.EXE也是微软平台上应用非常广泛的汇编语言开发工具之一。


2.1.3 👻LINK.EXE简介

LINK.EXE(用于链接)是微软Windows操作系统中的一个工具程序,用于链接和生成可执行文件、动态链接库(DLL文件)和程序库(LIB文件)。LINK.EXE是Microsoft Visual Studio环境下的一个标准工具。它根据编译器生成的目标文件,将各个目标文件合并成一个可执行文件,DLL文件或LIB文件。LINK.EXE还可以执行代码优化、符号解析和库文件管理等操作。它可以通过命令行或Visual Studio中的集成开发环境来调用和使用。


2.2 🔔下载

这里作者已经帮大家整理好了,大家可以直接去网盘取:

网盘链接:
https://pan.baidu.com/s/1HMwdTeRjK_Q5ADlBhS9nTQ?pwd=05zo
提取码: 05zo

网盘中给出了许多工具,作者这里就只介绍这三个,对于其他工具有需要的小伙伴可自行装配。
在这里插入图片描述

大家可以跟作者一样在dosbox安装路径下新建一个文件夹MASM,将这三个文件复制进去,便于后面对dosbox的配置。
在这里插入图片描述
在这里插入图片描述


2.3 🔔配置

    首先在这里声明一下,上述操作完成以后,大家其实已经将dosbox及其常用的工具安装完成已经可以正常使用了,为啥要还要配置呢?不妨大家先看看下面这个例子,打开debug.exe相关操作:

  1. 1️⃣打开 DOSBox,首先要使用一个命令来把我们的文件目录虚拟成c盘,如下图所示,出现下面情况说明虚拟成功:
    在这里插入图片描述

  2. 2️⃣转到我们的虚拟c盘;
    在这里插入图片描述

  3. 3️⃣打开debug.exe。
    在这里插入图片描述

    大家可以看到,我们需要经过系列的操作才能打开debug.exe,如果要编写的程序很多、中间在打错字母啥的那可就太残忍了。所以一向喜欢省事的作者本人,当然要进行一些配置优化这个过程。

配置过程:

  1. 1️⃣首先找到你下载文件的位置,双击进入下面文件中,细心的小伙伴估计已经发现与我们窗口调整的文件是同一个。
    在这里插入图片描述

  2. 2️⃣进入文件后,下拉至文件底部。添加一下语句,然后保存文件。
    在这里插入图片描述
    在这里插入图片描述

  3. 3️⃣重新打开dosbox,可以看到下面命令已经执行,那就先恭喜你已经配置完成。
    在这里插入图片描述



📝总结

    本文主要讲解了Dosbox和相关工具的详细安装教程,并没有涉及过多的使用,具体的使用将在后期的课程中穿插讲解。如果中间有不理解的地方,记得及时联系作者或者请教评论区里面的其他大佬帮忙解决。
    今天的内容就到这里了,你们都安装好了吗?如果还有疑问的话请在评论区里多多提问,大家可以一起帮你解决,让我们共同进步。创作不易,如果对你有用的的话点个赞支持下作者,你们的支持是作者创作最大的动力。关注我不迷路,让我们下期不见不散。

相关文章:

【汇编语言特别篇】DOSBox及常用汇编工具的详细安装教程

文章目录 📋前言一. ⛳️dosbox的介绍、下载和安装1.1 🔔dosbos简介1.2 🔔dosbox的下载1.2.1 👻方式一:官网下载(推荐)1.2.2 👻方式二:网盘安装包 1.3 🔔dosbox的安装1.4 &#x1f5…...

【牛客网刷题(数据结构)】:环形链表的约瑟夫问题

描述 编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数,报到 m 的人离开。 下一个人继续从 1 开始报数。 n-1 轮结束以后,只剩下一个人,问最后留下的这个人编号是多少? O(n) 示例1 好环形链表的约瑟夫问题是一个经典的问…...

虾皮印尼买家号如何注册

虾皮(Shopee)是一个流行的电子商务平台,想要注册虾皮印尼买家号,可以按照以下步骤进行操作: 1、访问虾皮印尼站点:打开浏览器,输入虾皮印尼官网 2、点击"注册":在网站的…...

SpringBoot WebService服务端客户端使用教程

服务端&#xff1a; 依赖 <!-- webservice相关依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web-services</artifactId></dependency><dependency><groupId&…...

【Python 千题 —— 基础篇】字符串长度

题目描述 题目描述 获取字符串长度是编程过程中常用的操作之一。编写一个程序&#xff0c;输入一个字符串&#xff0c;然后输出字符串的长度。 输入描述 输入一个字符串。 输出描述 程序将输入的字符串的长度输出。 代码讲解 下面是本题的代码&#xff1a; # 描述: 输…...

AIGC - 入门向量空间模型

文章目录 向量和向量空间向量的运算什么是向量空间&#xff1f;向量空间的几个重要概念向量之间的距离曼哈顿距离&#xff08;Manhattan Distance&#xff09;欧氏距离&#xff08;Euclidean Distance&#xff09;切比雪夫距离&#xff08;Chebyshev Distance&#xff09; 向量…...

python中使用xml.dom.minidom模块读取解析xml文件

python中可以使用xml.dom.minidom模块读取解析xml文件 xml.dom.minidom模块应该是内置模块不用下载安装 对于一个xml文件来说比如这个xml文件的内容为如下 <excel version"1.0" author"huangzhihui"><table id"1"><colum id&qu…...

计算机网络第一章补充整理(计算机网络体系结构)

前言&#xff1a;以下整理内容&#xff0c;参考《计算机网络自顶向下》和哈工大的计网慕课 目录 计算机网络的体系结构的一些概念为什么采用分层结构&#xff1f;分层结构的优点分层结构的缺点 开放系统互连&#xff08;OSI&#xff09;参考模型物理层功能数据链路层功能网络层…...

2023_Spark_实验十七:导入招聘大数据(项目)

一、爬虫爬取的招聘网站数据 二、在MySQL中创建空表 SET FOREIGN_KEY_CHECKS0;-- ---------------------------- -- Table structure for jd_jobs -- ---------------------------- DROP TABLE IF EXISTS jd_jobs; CREATE TABLE jd_jobs (job_name text,job_date text,minSale…...

小程序无感刷新

下载wechat-http依赖 npm install wechat-http封装请求拦截器和相应拦截器&#xff0c;借助refreshToken实现无感刷新 // 导入 http 模块 import http from wechat-http // 基础路径&#xff0c;同时需添加合法请求域名 http.baseURL https://live-api.itheima.net // 配置请…...

Unity C#随笔:简述String和StringBuilder的区别

1.、String&#xff1a; 不可变性&#xff08;Immutability&#xff09;&#xff1a; String对象一旦被创建&#xff0c;就不能被修改。每次对String对象进行操作时&#xff0c;实际上是创建了一个新的String对象&#xff0c;然后对象的引用重新指向这个新的对象。性能&#x…...

图论相关算法

一、迪杰斯特拉(Dijkstra)算法 迪杰斯特拉算法使用类似广度优先搜索的方法解决了带权图的单源最短路径问题。这是一个贪心算法。 1.核心思想 &#xff08;1&#xff09;每次选中一个点&#xff0c;这个点满足两个条件&#xff1a; 未被选过距离最短 &#xff08;2&#xf…...

Python人工智能需要学什么

Python语言在人工智能开发领域有非常广泛的应用&#xff0c;随着人工智能平台的落地应用&#xff0c;未来采用Python语言来开发行业智能产品会是比较常见的选择。 然而进行人工智能开发仅凭Python语言是不够的&#xff0c;学习Python人工智能需要学习哪些知识呢? 一、Python…...

Java 获取请求真实IP

获取IP地址为 127.0.0.1, 或者内网地址 Nginx配置, 只有 proxy_pass 时只能获取到 127.0.0.1 location / {proxy_pass http://127.0.0.1:8080; }修改为 location / {#保留代理之前的host 包含客户端真实的域名和端口号proxy_set_header Host $host; #保留代理之前的真实客…...

Python突破浏览器TLS/JA3 指纹

JA3 是一种创建 SSL/TLS 客户端指纹的方法&#xff0c;一般一个网站的证书是不变的&#xff0c;所以浏览器指纹也是稳定的&#xff0c;能区分不同的客户端。 requests库 Python requests库请求一个带JA3指纹网站的结果&#xff1a; import requestsheaders {authority: tls…...

web安全之XSS攻击

什么是XSS攻击 XSS&#xff08;Cross-Site Scripting&#xff09;又称跨站脚本&#xff0c;XSS的重点不在于跨站点&#xff0c;而是在于脚本的执行。XSS是一种经常出现在 Web 应用程序中的计算机安全漏洞&#xff0c;是由于 Web 应用程序对用户的输入过滤不足而产生的。 常见…...

【技巧】如何设置Excel表只输入固定内容?

如果你需要在Excel表格中输入固定的内容&#xff0c;可以设置“限制录入内容”&#xff0c;这样就只能输入设置好的内容&#xff0c;避免不小心输入错误信息。下面来看看如何设置吧。 首先&#xff0c;打开Excel表格后&#xff0c;选中需要输入固定内容的表格区域。 比如图片…...

手机抬手亮屏解锁,用到了哪些硬件?

随着时代发展&#xff0c;智能手机以丰富的功能及便利性&#xff0c;成为了人们必不可少的物品&#xff0c;其中人脸解锁功能是非常有用的功能&#xff0c;广受年轻人的喜爱&#xff0c;那么你知道她是如何实现吗&#xff1f;今天凡小亿带你们探索&#xff01; 手机抬手亮屏解锁…...

AI大模型高速发展,Web3还远吗?

在过去的几年里&#xff0c;人工智能&#xff08;AI&#xff09;和Web3技术都经历了令人瞩目的发展。AI大模型&#xff0c;特别是像GPT-3、GPT-4等这样的巨型语言模型&#xff0c;已经成为AI领域的明星&#xff0c;而Web3则代表了下一代互联网的愿景&#xff0c;具有去中心化和…...

CSS 滚动驱动动画 animation-range

animation-range 语法 normallength-percentagetimeline-range-name 具名时间线范围 named timeline rangecovercontainentry 和 entry-crossingexit 和 exit-crossing 兼容性 animation-range 这个属性可同时对 scroll progress timeline 和 view progress timeline 这两种不…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

中医有效性探讨

文章目录 西医是如何发展到以生物化学为药理基础的现代医学&#xff1f;传统医学奠基期&#xff08;远古 - 17 世纪&#xff09;近代医学转型期&#xff08;17 世纪 - 19 世纪末&#xff09;​现代医学成熟期&#xff08;20世纪至今&#xff09; 中医的源远流长和一脉相承远古至…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...

stm32wle5 lpuart DMA数据不接收

配置波特率9600时&#xff0c;需要使用外部低速晶振...

Linux中《基础IO》详细介绍

目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改&#xff0c;实现简单cat命令 输出信息到显示器&#xff0c;你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...

Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解

文章目录 一、开启慢查询日志&#xff0c;定位耗时SQL1.1 查看慢查询日志是否开启1.2 临时开启慢查询日志1.3 永久开启慢查询日志1.4 分析慢查询日志 二、使用EXPLAIN分析SQL执行计划2.1 EXPLAIN的基本使用2.2 EXPLAIN分析案例2.3 根据EXPLAIN结果优化SQL 三、使用SHOW PROFILE…...

自定义线程池1.2

自定义线程池 1.2 1. 简介 上次我们实现了 1.1 版本&#xff0c;将线程池中的线程数量交给使用者决定&#xff0c;并且将线程的创建延迟到任务提交的时候&#xff0c;在本文中我们将对这个版本进行如下的优化&#xff1a; 在新建线程时交给线程一个任务。让线程在某种情况下…...

MeanFlow:何凯明新作,单步去噪图像生成新SOTA

1.简介 这篇文章介绍了一种名为MeanFlow的新型生成模型框架&#xff0c;旨在通过单步生成过程高效地将先验分布转换为数据分布。文章的核心创新在于引入了平均速度的概念&#xff0c;这一概念的引入使得模型能够通过单次函数评估完成从先验分布到数据分布的转换&#xff0c;显…...

[C++错误经验]case语句跳过变量初始化

标题&#xff1a;[C错误经验]case语句跳过变量初始化 水墨不写bug 文章目录 一、错误信息复现二、错误分析三、解决方法 一、错误信息复现 write.cc:80:14: error: jump to case label80 | case 2:| ^ write.cc:76:20: note: crosses initialization…...