实现方式是VirtualBox虚拟机+精简的32位xp系统。指导小白用,高手就直接跳过吧。

一、背景

初学者学习汇编语言通常是从16位汇编开始,但是现在的64位Win7系统明确表示不支持16位的程序。尽管masm具有64位版本,但是它编译出的程序已经失去了16位程序简洁直接的特性,也失去了作为汇编初学语言的优势。所以要想保留Win7又想学习汇编就需要搭建一个16位汇编的运行环境,目前有这样几种方式

  1. 直接在硬盘上安装双系统,但是在高版本系统基础上再安装低版本系统,启动菜单是个麻烦事。
  2. 制作优盘版PE。这种方式用起来就比较麻烦,要插上优盘重启电脑。并且不是所有电脑都支持优盘启动。(小米还怕它不安全。。。)
  3. 虚拟机。最直接的方式,对新手来说,安装稍显复杂,但是一劳永逸。这篇文章就讲解虚拟机方式。

二、要准备的工具

  1. 当前先要有一个虚拟机,虚拟机就是在操作系统中模拟出一台或多台电脑,可以在模拟的电脑安装系统,虚拟机系统中完全感觉不到它是在虚拟的环境中运行的。(额,我们的世界是不是也是虚拟的呢。^_^)。目前常用的虚拟机有VB,VM。为了让新手使用简单,这里使用Oracle的VirtualBox虚拟机,也就是VB。可以到官方网站下载它(http://www.virtualbox.org/wiki/Downloads),这里要下载VirtualBox for Windows hosts x86/amd64版本,大概80M。找不到下载链接的话直接点击这里吧(http://download.virtualbox.org/virtualbox/4.0.8/VirtualBox-4.0.8-71778-Win.exe)
  2. 虚拟机准备好了还要往里安装系统,需要准备一个32位xp系统的安装盘,当然不一定得是光盘的,可以下载一个ISO映像(ISO映像就是对一张光盘的一份拷贝)。这里选择“深度 Windows XP SP3完美精简 V6.2版[215M小盘]”(下载地址:http://www.xp580.com/soft/GhostXP/8526.html)作为演示,当然别的版本也可以。
  3. 16位的masm编译环境。这个就不用多说了。没有的可以点击这里下载

三、安装过程

1、安装虚拟机

双击下载得到的“VirtualBox-4.0.8-70112-Win.exe”开始安装,安装过程非常简单,全部保持默认设置即可。因为要安装虚拟网卡的驱动,所以安装结束可能要重启计算机。

2、新建虚拟机

打开Oracle VM VirtualBox Manager启动虚拟机管理器,点击左上角的新建,打开了新建虚拟机向导,点下一步进入向导。

随意填写一个虚拟机名,系统类型选择Windows XP,如图

选择系统内存大小,保持默认即可

下一步是选择虚拟硬盘,现在还从未创建过虚拟硬盘,所以选择“创建新的虚拟硬盘(c)”

然后就进入了新建虚拟硬盘向导,点下一步

选择虚拟硬盘的类型,特点已经写的很清楚,这里选择动态扩展

设置硬盘大小,因为不需要装太多的东西,选择2G即可

下一步点完成完成了磁盘的创建,再点完成完成了虚拟机的创建。

现在已经具有了一台有一个空白硬盘,没有光驱的计算机,下面要进行配置

3、配置虚拟机

回到虚拟机管理器,选中刚刚建立的虚拟机,点击上边的设置,修改虚拟机运行参数

选择Storage设置,存储树这里显示了刚刚建立的虚拟硬盘,下面还有一个“没有盘片”,要安装系统需要添加一个光驱。我们已经下载了系统的ISO映像,直接把ISO映像作为光盘导入到虚拟机中,选中“没有盘片”,点击右侧的小光盘图标(Set up the virtual CD/DVD drive)

选择Choose a virtual CD/DVD disk file..

找到已经准备好的WinXP的ISO映像

现在点击确定完成配置

4、安装系统

注意:当前的鼠标模式是独占的,也就是说当你点击虚拟机屏幕时,鼠标就归虚拟机控制,真实系统里就没有光标了。VB提供了快捷键使光标“移出”虚拟机屏幕,这个快捷键可以从窗口的右下角看到,如图光标所指处,默认是键盘右边的Ctrl键

一会儿配置系统会把系统修改成非独占,就可以像一个窗口一样使用虚拟系统了。

现在我们的虚拟机就是一个具有2G硬盘,192M内存,光驱里插着一张XP系统的安装盘的计算机了,下面的任务就是安装XP系统。

在虚拟机管理器选中虚拟机,点击开始

弹出首次运行向导,由于我们已经配置好虚拟机,点击取消即可

系统自动从光盘引导,进入了安装过程。等待加载驱动,然后安装向导提示选择磁盘分区

现在的磁盘是没有分区的,首先应该对磁盘分区,按c。

然后不用修改大小,直接按回车,然后就看到了已经把2G的空间全部划分到c盘

选中新划分的磁盘,按回车,把新系统安装到c盘

要求格式化磁盘,这里选择“FAT文件系统格式化磁盘分区(快)”

下面的过程是系统自动进行了,格式化分区,检查磁盘,复制文件,安装系统。大概需要十几分钟的时间,当你看到Windows XP的桌面时,表示系统已经安装完成了。

自动打开的“Deep XP专用优化工具”直接关闭就行了。

5、配置系统

电脑上安装完了系统需要取出光盘,虚拟机上同样也需要卸载虚拟光盘,防止虚拟机下次再从光盘启动。

点击菜单上的设备-分配光驱-Remove disk from virtual drive 就完成了虚拟光盘的卸载。

下面要把我们需要的文件传送到虚拟机系统中,也就是完成虚拟机系统和真实系统的通信。同时也要实现系统非独占鼠标。

这些功能通过安装Virtual BOX提供的工具可以实现,点击设备-安装增强功能

虚拟机中自动开始了安装过程,依然是按照默认设置安装即可。安装完成,重启虚拟机

启动后系统已经支持非独占鼠标,下面将汇编开发环境传送到虚拟机中。

将masm的文件夹放到一个方便的地方,这里是E:\temp目录下。

选择设备-分配数据空间

点右边的图标添加数据空间

在数据空间位置,选择其它

弹出的“浏览文件夹”,选择E:\temp(根据你masm文件夹存放的位置选择)

选中Auto-mount和固定分配,这样每次启动都会加载数据空间,并且下次交换文件也不用添加数据空间了

点确定关闭对话框,再点确定关闭分配数据空间的对话框。重启虚拟机。使分配的数据空间生效

启动后发现“我的电脑”里多了一个映射的网络驱动器,这就是我们添加的数据空间。

打开它发现与我们分配的E:\temp文件夹下的内容是一样的,把masm文件夹复制到虚拟机c盘根目录下

在虚拟机系统中点击“开始”-“所有程序”-“附件”-“命令提示符”,按alt+回车可以全屏显示命令提示符,切换到c:\masm目录下

敲入几个命令,汇编需要的编译、连接、调试命令可用

edit 命令可用

四、总结

现在,虚拟机系统就搭建完成了,以后学习汇编的时候直接打开桌面上的虚拟机管理器“VirtualBox”,然后启动虚拟机即可。其它的与一台装有XP的电脑没有什么区别。

终于写完了,看着这个再不会装虚拟机的。。。面壁去

转载请保留以下信息,否则视为侵权,谢谢合作!

本文作者:石莹

原文链接:http://www.cnblogs.com/S-E-P/archive/2011/05/18/2049730.html#

转载于:https://www.cnblogs.com/S-E-P/archive/2011/05/18/2049730.html

手把手教你在64位Win7下部署16位汇编学习环境相关推荐

  1. arduinowin7_Arduino在64位WIN7下无法安装驱动的解决办法

    本人购买Arduino UNO R3连接在64位WIN7下,安装官方驱动后显示如下图错误: 硬件列表显示未知设备,如下图: 多次反复安装仍无法识别,在网上搜索都说是精简版的Win7 ghost删除了大 ...

  2. 招商银行U盾/网盾(专业版)在64位win7下不能运行的解决方法

    自从换win7后,小生的招行U盾一直不能正常使用,严重影响网上支付.经多方查询并亲身试验,以下方案绝对有效,就不必烦劳小生本人亲自研究了,感谢原作者! 在64位win7下,很多软件都不能正常运行,让人 ...

  3. 手把手教你如何在Ubuntu22.04下驱动 EPSON系列打印机---以爱普生 EPSON L380为例

    手把手教你如何在Ubuntu22.04下驱动 EPSON系列打印机-以爱普生 EPSON L380为例 系统:Ubuntu22.04 目标打印机:L380 一.检查你的数据线是否插好 这一步,非常最要 ...

  4. 32位Win7下安装Ubuntu 16.04

    32位Win7下安装Ubuntu 16.04 Desktop 一.下载Ubuntu的ISO镜像种子文件 因为电脑是32位Win7老电脑,平时不用,故想装个Ubuntu系统废物利用一下.先进入Ubunt ...

  5. 你为什么需要在64位系统下用32位程序

    在64位系统下,用64位的程序自然是能够充分利用cpu中的64位指令和64位的地址空间,可有的时候,我们却不得不在64位系统下使用32位的程序. 64位和32位 对于64位还是32位,首先要从概念上把 ...

  6. 64位系统下一个32位的程序究竟可以申请到多少内存?

    64位系统下一个32位的程序究竟可以申请到多少内存? cpu的位是指一次性可处理的数据量是多少,1字节=8位,32位处理器可以一次性处理4个字节的数据量,依次类推.32位操作系统针对的32位的CPU设 ...

  7. PL/SQL Developer 在windows7 64位系统下连Oaracle11g64位系统的解决经验

    PL/SQL Developer 在windows7 64位系统下连Oaracle11g64位系统的解决经验 一.问题现象及解决方法 现象: 1.PL/SQL 无法登录64位数据库 2.在PL/SQL ...

  8. 64位系统下用32位程序

    在64位系统下,用64位的程序自然是能够充分利用cpu中的64位指令和64位的地址空间,可有的时候,我们却不得不在64位系统下使用32位的程序. 64位和32位 对于64位还是32位,首先要从概念上把 ...

  9. win7下搭建nginx+php的开发环境

    win7下搭建nginx+php的开发环境,需要的朋友可以参考下 一.下载相关软件 nginx下载:http://nginx.org/en/download.html nginx常见异常:http:/ ...

最新文章

  1. doc python 颜色_Python wordcloud.ImageColorGenerator方法代码示例
  2. 哈希表处理冲突的方法
  3. 链表表示八进制加法c语言,用单链表实现八进制加法操作,恳请大家看看Add( )函数的问题...
  4. boot分布式计算 spring_腾讯T4大佬剖析SpringBoot2 :从搭建小系统到架构分布式大系统...
  5. 【opencv学习】完全基于opencv的双目景深与测距的实现
  6. python常见编程面试题_python面试题基础部分 80题
  7. 辽源市强化“智慧城市”建设 提高居民幸福指数
  8. web页面防盗链功能使用--request.getHeader(Referer)
  9. C++算法学习(回溯算法)
  10. JCreator下载地址与注册码- -
  11. 计算机光驱里有硬盘,笔记本电脑光驱位装机械硬盘有以下危害
  12. 在Ubuntu 12.10中安装QQ2012
  13. iptables之forward转发
  14. 合并时显示是无效的m3u8文件_合并M3U8文件方法
  15. IAR Embedded Workbench调试技七
  16. linux C++ 获取当前时间,以标准时间“年-月-日 时:分:秒”的形式输出
  17. Silvaco TCAD仿真5——process simulation(Athena)
  18. 三菱DPLSR无故不执行问题
  19. 《gitlab从零到壹》出现问题:代码合并,源分支会被删除解决方案
  20. Qt QNetworkAccessManager 下载url

热门文章

  1. 陶梅霞, 主研方向为物理层网络编码、无线资源分配、MIMO技术及物理层安全
  2. XIYOU_Linux兴趣小组18、17、15年面试题总结
  3. PKI证书签发系统(web版)
  4. Latex并列摆放两张表格
  5. 商业大亨微信草花服务器,《商业大亨》富豪上阵斥资亿万抢油田
  6. 《常用控制电路》学习笔记——数字控制直流电动机调速电路
  7. 美通企业日报 | 日企限制女性上班戴眼镜被指偏见;上海北京位列国际合作十大热点城市...
  8. 有向无环词图(DAWG)
  9. 分段式多级离心泵_分段式多级离心泵的工作原理及结构图
  10. RT5350(I2S)