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

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

AI书签管理工具开发全记录(十九):嵌入资源处理

1.前言 &#x1f4dd; 在上一篇文章中&#xff0c;我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源&#xff0c;方便后续将资源打包到一个可执行文件中。 2.embed介绍 &#x1f3af; Go 1.16 引入了革命性的 embed 包&#xff0c;彻底改变了静态资源管理的…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

腾讯云V3签名

想要接入腾讯云的Api&#xff0c;必然先按其文档计算出所要求的签名。 之前也调用过腾讯云的接口&#xff0c;但总是卡在签名这一步&#xff0c;最后放弃选择SDK&#xff0c;这次终于自己代码实现。 可能腾讯云翻新了接口文档&#xff0c;现在阅读起来&#xff0c;清晰了很多&…...