文/玄魂

前言

在开始这一系列文章之前,我想先说下,对于古董级的8086汇编到底还以有没有学习的必要。这里我说下我要从8086开始学习,而不是从win32汇编或者win64汇编直接开始学习的理由。

开发技术越是上层,高级,那么对底层封装的就越深。我学习汇编语言的目的,不是用它来开发应用软件,因为那是高级语言擅长的领域。学习汇编,正是为了理解操作系统底层技术。

汇编语言一脉相承,从基本开始,才能理解本质,理清脉络。

从内存管理的角度看,实模式和保护模式一直相辅相成,即使是最现代的操作系统也没有脱离实模式。学习8086汇编,是理解实模式的最好方式。

基于这几点理由,我的汇编之旅,从8086开始。按惯例,第一篇文章,都是从开发环境的搭建开始,这个系列也不例外,只不过我分成两篇文章,第一篇简单介绍在虚拟机中安装dos 7.1,下一篇再介绍如何集成开发工具到虚拟机中。

虚拟机下安装 ms-dos 7.1

首先准备光盘映像,可以在Google或者百度搜索“[MS-DOS.7.10完整安装光盘ISO版].DOS71CD.ISO”,然后下载。

虚拟机我使用的是Oracle VM VirtualBox。打开之后,选择“新建”,如图1.

图1

类型选择“other”,版本选择Dos,输入你喜欢的名字,如图2.

图2

下一步分配内存,使用默认值即可,如图3.

图3

接下来创建虚拟硬盘,如图4.

图4

选择虚拟硬盘类型,如图5.

图5

选择硬盘的大小分配类型,建议选择固定大小,毕竟硬盘空间不是稀缺资源,如图6.

图6

选择虚拟磁盘的文件位置,如图7.

图7

创建虚拟磁盘之后,回到主界面,点击“设置”按钮,如图8。

图8

在设置界面,选择存储项,如图9.

图9

设置光盘属性,选择第一通道,然后挂接安装盘的镜像文件。然后启动虚拟机。

虚拟机从光盘启动后,界面如图10。

图10

输入 数字“1”,开始安装。

紧接着,一路next。

图11

图12

图13

图14

由于新建的磁盘没有格式化,这里会提示是否格式化,选择格式化,如图15.

图15

格式化之后,需要重启。如图16.

图16

点击重启之后,按F12,进入启动菜单选择页,如图17.

图17

选择从cd-rom启动,继续安装,重复之前的步骤,直到重写 MBR的页面,如图18.

图18

接下来又是 一阵 next,continue,到询问是否安装 AddOne的界面,如图19.

图19

这里,我只想安装一个略微纯净的dos系统,选择NO。图20,选择“Enable both UMB and EMS”,方便我们之后详细了解实模式的内存分配。

图20

图21,是否加载驱动,这里我选择yes。

图21

接下来就是安装成功的界面了,兴奋吧。如图21.

图21

在启动Dos系统之前,先将光盘映像卸载,否则你还得调整启动菜单。如图22.

图22

重新启动,进入Dos系统。

图23

下一篇文章,将介绍如何安装8086汇编的开发工具到虚拟机中。

原文链接

8086汇编语言(1)虚拟机安装ms-dos 7.1

更多相关内容:玄魂的博客

8086汇编语言(1)虚拟机安装ms-dos 7.1的更多相关文章

  1. 在Virtual Box虚拟机中安装MS DOS!

    原文地址:https://mylinuxramblings.wordpress.com/2010/12/05/linux-mint-debian-edition-lmde-first-impressi ...

  2. 8086汇编语言学习(二) 8086汇编开发环境搭建和Debug模式介绍

    1. 8086汇编开发环境搭建 在上篇博客中简单的介绍了8086汇编语言.工欲善其事,必先利其器,在8086汇编语言正式开始学习之前,先介绍一下如何搭建8086汇编的开发环境. 汇编语言设计之初是用于 ...

  3. 长平狐 Android-x86虚拟机安装配置全攻略

    Android-x86虚拟机安装配置网上有很多,但是全部说明白的确不多,希望这篇文章能把主要的配置介绍给您,帮助您少走一些弯路. 本文分别针对VMWare和Virtual Box两种虚拟机介绍安装配置 ...

  4. Android-x86虚拟机安装配置全攻略

    转自Android-x86虚拟机安装配置全攻略 注:这里安装从简,具体请参考虚拟机Vmware安装运行安卓4.0详细教程 Android-x86虚拟机安装配置网上有很多,但是全部说明白的确不多,希望这 ...

  5. VirtualBox安装及使用说明和虚拟机安装XP系统图文教程

    virtualbox是一款开源的虚拟机软件,它能够支持多种操作系统的安装如:Solaris.Windows.DOS.Linux.OS/2 Warp.BSD等系统作为client操作系统,而且最新版本号 ...

  6. VBox&vmware虚拟机安装Linux及Linux基础入门学习

    VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了 ...

  7. VM虚拟机安装 常用Linux命令 网卡配置 (第二天)

    VM虚拟机安装:(昨天已经安装好了VM了,按照提示安装就好,很简单) 1.安装centos7虚拟机,现在磁盘里面新建文件夹作为安装文件夹 2.找到centos7的iso文件,打开vm-新建虚拟机-按照 ...

  8. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  9. Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016

    Python黑帽编程1.1虚拟机安装和配置 Kali Linux 2016 0.1  本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Att ...

随机推荐

  1. PIE结对编程

    学习进度条 点滴成就 学习时间 新编写代码行数 博客量 学到知识点 第一周 8 0 0 了解软件工程 第二周 7 0 1 了解软件工程 第三周 11 0 1 用例图 第四周 6 25 0 结对编程 第 ...

  2. Spring依赖注入:基于xml配置

    基础接口 BeanFactory.ApplicationContext. BeanFactory用于创建并管理.获取各种类的对象. ApplicationContext从BeanFactory派生而来 ...

  3. Animation.wrapMode循环模式

    WrapMode.Default:从动画剪辑中读取循环模式(默认是Once). WrapMode.Once:当时间播放到末尾的时候停止动画的播放. WrapMode.Loop:当时间播放到末尾的时候重 ...

  4. collections之deque【双向队列】与Queue【单向队列】

    今天来向大家介绍两个队列,一个是deque,双向队列,另外一个是Queue,单向队列,队列和堆栈不同,队列为先进先出,大家还需要注意一下,双向队列为collections模块中的类,而Queue为qu ...

  5. Linux gprof命令

    一.简介 gprof是GNU工具之一,它在编译的时候在每个函数的出入口加入了profiling的代码,运行时统计程序在用户态的执行信息,可以得到每个函数的调用次数,执行时间,调用关系等信息,简单易懂. ...

  6. p3412 [POI2005]SKO-Knights

    传送门 分析 图1 我们假设我们现在有两个向量(2,3)和(4,2),将他们所能到达的点在几何画板上画出来,再将这些点用红线连起来,在将横坐标相同的点用蓝线连起来便能得到图1,就此我们可以发现可以用绿 ...

  7. DNS/BIND in Debian

    Debian official document:http://www.debian.org/doc/manuals/network-administrator/ch-bind.html Buildi ...

  8. common常用到的类

    org.apache.commons.codec.digest.DigestUtils.md5Hex(String)    md5

  9. Python 的stat 模块

    #!/usr/bin/env python#-*- encoding:UTF-8 -*- import os,time,stat fileStats = os.stat ( 'test.txt' )  ...

  10. 类的const成员函数,是如何改变const对象的?

    我们知道类里面的const的成员函数一般是不允许改变类对象的,但是我们知道const 类型的指针是可以强制类型转出成非const指针的,同样的道理,this指针也可以被强制类型转换 class Y{ ...