当前位置: 首页 > 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 这两种不…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展&#xff1a;显示创建时间8. 功能扩展&#xff1a;记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...