文/玄魂

前言

在开始这一系列文章之前,我想先说下,对于古董级的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. php去除bom

    <?php /*检测并清除BOM*/ if(isset($_GET['dir'])){ $basedir=$_GET['dir']; }else{ $basedir = '.'; } $auto ...

  2. 验证二叉查找树 · Validate Binary Search Tree

    [抄题]: [思维问题]: 不知道要定义resultType, 其实用仔细分析判断条件就行了:是否是bst+最大最小值 类似于平衡二叉树:是否平衡+左右的高度差 [一句话思路]: [输入量]:空: 正 ...

  3. RedisUtil工具类

    转载:http://blog.csdn.net/liuxiao723846/article/details/50401406 1.使用了jedis客户端,对redis进行了封装,包括: 1)使用了re ...

  4. Spring框架的属性注入

    1. 对于类成员变量,常用的注入方式有两种 * 构造函数注入(没有空的构造方法注入) * 属性setter方法注入(有空的构造方法注入) 2. 在Spring框架中提供了前两种的属性注入的方式 1. ...

  5. centos7之iptables与firewalld

    保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网 与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用. firewalld与iptables iptables f ...

  6. docker实战

    docker基础入门 docker网络

  7. PID算法(C语言)

    /************ PID算法(C语言) ************/ #include <stdio.h> #include<math.h> struct _pid { ...

  8. easyui-从数据库读取创建无极菜单

    easyui-tree基础必须知道这个如下: 树控件使用<ul>元素定义.标签能够定义分支和子节点.节点都定义在<ul>列表内的<li>元素中.以下显示的元素将被用 ...

  9. 《JavaScript高级程序设计》笔记

    1. 当在函数内部定义了其他函数时,就创建了闭包.闭包有权访问包含函数内部的所有变量. 2. 闭包可以分隔变量空间,不会占用全局空间而造成相互间的干拢.使用闭包可以在JavaScript中模仿块级作用 ...

  10. 2018.10.05 NOIP模拟 相遇(dfs序+lca)

    传送门 考虑到两条路径相交的条件: 设两条路径为a,ba,ba,b. 则要么aaa路径的lcalcalca在bbb上. 要么bbb路径的lcalcalca在aaa上. 因此我们维护两棵树. 分别支持路 ...