在VMware虚拟机中配置DOS汇编开发环境!!
操作系统:win7 32位
DOS环境:DosBox 下载:http://www.dosbox.com/ 选择当前适合自己版本,下载就可以了。
汇编编译器:MASM 5.0 下载:http://download.csdn.net/detail/sunylat/9726678 里面包含了所有DOS下开发汇编使用的工具。
假设我们已经在VMware虚拟机中安装完win7 32位操作系统了,那么我们下载完上面两个软件之后,把这两个软件拷贝到win 7中,随后开始我们的安装和配置。
一,安装和配置DOS汇编开发环境:
1,安装DosBox:双击DosBox安装文件,随后一直“next”,直到安装完毕后就可以了。
2,配置DosBox:为了让DosBox启动就进入我们设定的目录,那么需要编辑DosBox的配置文件。
A,打开DosBox配置文件:在程序开始菜单中,打开DosBox配置文件。
B,编辑DosBox配置文件:需要在配置文件的“autoexec”小结中增加我们需要配置内容,具体配置内容如下:
mount C C:\DOS
C:
第一行:mount C C:\DOS,把我的C盘根目录下的"DOS"目录自动加载上来。
第二行:显示C:\提示符,实际上这个时候这个C:\虚拟的盘符对应我设定的目录:“C:\DOS”,这个目录就是我存放各种开发工具的目录,也是存放各个工程的目录。
3,加入DOS汇编开发工具:
把下载的MASM5.0压缩包解压缩,随后把里面所有EXE程序放入上面配置文件中加载的目录,我的目录是“C:\DOS”,那我就把所有解压缩出来的EXE放到这个目录中了。
经过上面配置,DOS汇编环境就配置完毕了,下面开发一个DOS汇编程序来验证我们的DOS汇编环境是否可以正常工作!!
二,开发第一个DOS汇编程序:
1,编写DOS汇编程序:可以用任意文本编辑器编写DOS汇编程序,我使用的是Notepad++,直接在“C:\DOS”目录中创建一个“test.asm”文件,输入汇编程序代码,输入完毕后保存退出。
assume cs:codesg codesg segment
mov ax,0123H
mov bx,0456H
add ax,bx mov ax,4c00H
int 21H
codesg ends end
2,启动DosBox,双击桌面的DosBox图标,DosBox启动之后,直接显示“C:\”,实际上这个时候是在我们先前设定的目录中:“C:\DOS”,我们可以直接用“dir”命令验证,是否我们正在这个设定的目录中。
3,编译汇编程序:
A,在DosBox的"C:\"提示符下,输入“masm test.asm”,随后回车。
B,在随后的提示信息后面输入“test.obj”。
C,随后的提示都回车就可以了,最后会生成"test.obj"文件。
4,链接目标文件,生成最终的EXE程序。
A,在DOS提示符“C:\”下面输入“link test.obj”。
B,在随后的提示信息后面输入“test.exe”。
C,随后的提示都回车就可以了,最后会生成“test.exe”程序了,这就是我们最终要生成的EXE可执行文件。
D,在DOS提示符里面输入“test.exe”,程序正常执行,无任何输出信息,随后进入DOS提示符状态。
经过上面各个步骤,我们就能成功在VM虚拟机里面配置好了DOS的汇编开发环境了!!!
参考:
http://www.cnblogs.com/zhcncn/p/4808257.html
http://wenku.baidu.com/view/cdda041552d380eb62946db2.html
http://www.cnblogs.com/BoyXiao/archive/2010/11/06/1870397.html
在VMware虚拟机中配置DOS汇编开发环境!!的更多相关文章
- 在VS2008中配置WDK7600驱动开发环境
网上这类资料多如牛毛,也许很多人都是转来转去,却很有人去真正的测试,有时候感觉确实对他人也是一种误导. 这里是我自己在VS2008 + WDK7600.16385.0 + DDKWizard配置自己的 ...
- 在Eclipse中配置安卓的开发环境 (踩过的坑)
这个学期学校有门安卓程序设计课需要安装安卓开发环境. 一开始安装的是Andriod Studio,但是过程很坎坷很心酸,遇到各种各样的问题,最后还没有解决. 没办法决定用Eclipse配置安卓环境,虽 ...
- 在VMware 虚拟机中配置 windows2003系统的NLB负载均衡;0x800706D5错误的解决方法;没有接口可用于安装新的群集
首先在VM里面 我装了3个2003的系统, 分别为 webservice01 ,webservice 02 , 以及 webview 这3台. 前面两台用于配置负载均衡,后面的webview就是 ...
- Go语言系列:(1)在VsCode中配置Go的开发环境
一.为什么选VSCode 这个系列的初宗是带领公司的PHPer转Go,在正式写这篇博文前,咱们先说说Go有哪些主流的IDE 1.GoLand(收费) JetBrains出品必属精品,除了贵没有其它缺点 ...
- Ubuntu18.04中配置QT5.11开发环境
准备工作 参考 https://wiki.qt.io/Install_Qt_5_on_Ubuntu . # 安装g++ sudo apt install build-essential # sudo ...
- 在Sublime Text 3中配置Python3的开发环境/Build System
本文来源:https://www.cnblogs.com/zhangqinwei/p/6886600.html Sublime Text作为一款支持多种编程语言的文本编辑神器,深受广大开发者的喜爱.通 ...
- Sublime Text 3中配置Python3的开发环境
在Tools-->Build System-->New Build System 之后弹出如下界面: 将其内容修改为 代码: { "cmd": ["D:/so ...
- 【Linux】VMware虚拟机中如何配置静态IP
此处详解如何在VMware虚拟机中配置静态IP. 上图是一个草图,大致说明下VMware网络情况.网段指某个IP范围,例如一栋小区楼和另一栋小区楼就不是一个网段 如果你在A小区,你女朋友在B小区,你想 ...
- VMware虚拟机中如何配置静态IP
我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络下的虚拟交换机 VMnet8:用于虚拟NAT网络下的虚拟交换机 VM ...
随机推荐
- Hive 安装配置记录
http://yymmiinngg.iteye.com/blog/708230 export HADOOP_HOME_WARN_SUPPRESS=1 export JAVA_HOME=/home/ha ...
- $.ajax提交,后台接受到的值总是乱码?明天再总结
//首先说明,我的服务器和页面编码都是GBK,所以尝试了很多种GBK的方式前台:function printFunction(){ window.print(); $.ajax({ url : '/t ...
- FSM, VISIBILITY MAP AND VACUUM
Update: Heikki’s slides are here! Heikki Linnakangas gave a presentation this past Sunday at FOSDEM ...
- c# webbrowser 错误捕获
private void Form1_Load(object sender, EventArgs e) { webBrowser1.Url = new Uri("about:blank&qu ...
- SignalR的安装
介绍 SignalR 是 ASP.NET 团队正在开发的一个 Microsoft .NET Framework 库和 jQuery 插件,可能包括在以后版本的 ASP.NET 平台中. 它提供了一些前 ...
- 当当网开源Dubbox,扩展Dubbo服务框架支持REST风格远程调用
当当网近日开源了Dubbox项目,可为Dubbo服务框架提供多项扩展功能,包括REST风格远程调用.Kryo/FST序列化等等. 当当网架构部和技术委员会架构师沈理向InfoQ中文站介绍了Dubbox ...
- Pigs and chickens
“Pigs and chickens”是Scrum软件开发模式中的一个比喻,用来比喻参会者在每天的Scrum会议中所起的作用. 在橄榄球中,scrum的意思是“重新开始游戏”.对于程序员来说,每日Sc ...
- javascript 返回数组中不重复的元素
这是实现结构伪类type-of-type的部分代码: <script type="text/javascript"> var ret= ["span" ...
- ubuntu 创建快捷方式
sudo ln -s /opt/eclipse/eclipse /usr/bin/eclipse 这样就可以在命令行中敲:eclipse,来打开eclipse了. 应该还有一种方式,就像快捷方式一样. ...
- JSP的Servlet监听器
JSP的Servlet监听器 来源: http://blog.csdn.net/phoenix_17th/article/details/3868670 Servlet 监听器用于监听一些重要事件的发 ...