经过虚拟机的体验,我发现还是dosbox里汇编比较方便。。。。。

一、下载安装 dosbox

DOSBOX

准备好 masm.exe、link.exe、debug.exe,放在~/dos下(文件夹名字随便取)。

打开 dosbox,输入mount c ~/dos,把名为dos的文件夹挂载到dos系统

二、VIM安装

在 dosbox 中

C:
cd vim73
install

三、配置自动挂载、path路径

打开配置文件(位置见后文),在最后的[AUTOEXEC]下加上

mount c: ~/dos
c:
PATH c:\;c:\vim73; #可以直接运行PATH目录下的exe

配置文件路径:

  1. (Windows) "开始"->"所有程序"->DOSBox-0.74->Options
  2. (Linux) ~/.dosbox/dosbox-0.74.conf
  3. (MAC OS X) ~/Library/Preferences/"DOSBox 0.74 Preferences"

四、DOSBOX 快捷键及 MS-DOS 命令

  1. 全屏/退出全屏:alt+enter
  2. 释放鼠标:ctrl+F10
  3. dir 显示目录内容,可选参数:/w 只显示文件名,/P 显示部分内容,*.exe 筛选出可执行文件
  4. cd 进入目录,cd .. 退回上一级目录
  5. . md 新建目录
  6. rd 删除目录
  7. cls 清空屏幕
  8. copy 复制文件
  9. del 删除文件
  10. deltree 删除整个文件夹
  11. ren 重命名
  12. ver显示当前版本号
  13. type 输出文本文件内容
  14. echo 显示消息

五、hello world

新建asm文件:vim hello.asm ,按【i】键,进入插入模式

stack segment stack
db 200 dup(0)
stack ends data segment
buf db 'hello world!$'
data ends code segment
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
lea dx,buf
mov ah,9
int 21h
mov ax,4c00h
int 21h
code ends
end start

按【ESC】进入命令行模式,输入:x 保存并退出。

编译:masm hello

链接:link hello

执行:hello

六、配置vimrc

这个vim73 文件夹自带的配置里包含了各种快捷键,比如复制(ctrl+c)粘贴(ctrl+v)保存(ctrl+s),我在原来基础上加上自己的配置以及一键编译运行asm的功能。

首先用vim打开vim配置文件:输入vim _vimrc,加上下面内容,最后保存退出。

filetype indent on
syntax on
set nu ai ci si
set sw=4 ts=4
set autochdir
set backspace=2
set mouse=a map<F4> :w <CR> :!masm %<,,,; <CR> :!link %<,,,; <CR> :!./%< <CR>
imap<F4> <ESC> :w <CR> :!masm %<,,,; <CR> :!link %<,,,; <CR> :!./%< <CR>

MS-DOS 系统汇编环境之DOSBOX+vim的更多相关文章

  1. 【汇编】1.汇编环境的搭建:DOSBox的安装

    前言 DOSBox是一款在windows系统运行DOS程序的环境模拟器.可以解决在64位机中汇编程序编译调试等问题. 本文以 DOSBox 0.74 为例,汇编编译程序采用MASM6. 第一步下载相关 ...

  2. MS-DOS 6.22 +Vim+masm 汇编环境

    安装vim 个人习惯用 vim 编辑,因此稍微折腾了一下.不用这么麻烦直接用 edit 编辑也是可以的. 原来安装的 MS-DOS 7.10 虚拟机安装好vim后无法运行,所以改用了 MS-DOS 6 ...

  3. windows汇编环境配置

    原文地址 软件下载 需要的软件已经打包,包括dosbox和MASM.如果没有这两个软件可以在下面的地址下载. http://hjwblog.com/game/汇编环境.zip 点击下载 安装dosbo ...

  4. [原]Sublime Text3 搭建16位汇编环境(windows)

    最近在学习王爽的<汇编程序>,参考<简单OS开发前奏<一>EDITPLUS+MASM32搭建汇编开发环境(16位+32位)>http://www.cnblogs.c ...

  5. win10汇编环境的搭建

    第一步:下载DOSBox0.74-win32-installer 可以去官网:http://www.dosbox.com/ 或者链接:https://pan.baidu.com/s/1UA77qTLO ...

  6. odoo10源码win系统开发环境安装图文教程

    前言 odoo10的源码安装教程不太完整或对新手不够友好,本新手再次整合出一份友好的新手教程(老鸟慎入) 准备工作 一个干净的window系统(事先没有其他python环境的系统)如果怕系统污染可以先 ...

  7. 基于DRL和TORCS的自动驾驶仿真系统——之环境配置

    基于DRL和TORCS的自动驾驶仿真系统 --之环境配置 玩TORCS和DRL差不多有一整年了,开始的摸爬滚打都是不断碰壁过来的,近来在参与CMU的DRL10703课程学习和翻译志愿者工作,也将自己以 ...

  8. Linux系统Java环境配置

    1.卸载Linux系统自带的JDK java -version rpm -qa | grep -i java 我们要删除掉自带的JDK环境 rpm -e --nodeps java-1.6.0-ope ...

  9. win7 64位环境下配置汇编环境和程序设计

    下载dosbox,并解压安装 下载地址: http://pan.baidu.com/s/1eRJbJAq 默认安装到C:\Program Files (x86)\DOSBox-0.74 安装成功后,双 ...

随机推荐

  1. AndroidManifest.xml文件解析

    一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整个项目的根目录,描述了package中暴露的组件(activiti ...

  2. Day1 初步认识Python

    天气有点阴晴不定~ (截图来自----------金角大王) 1.学习了计算机概论(CPU/Memory/Disk,memory的存在是为了解决信息传输产生的时延) CPU:精简指令集(RISC)-- ...

  3. 消息队列queue

    一.queue 在多线程编程中,程序的解耦往往是一个麻烦的问题,以及在socket网络编程中也会有这样的问题.recv 和send之间,如果服务端有消息,问题需要发送给客户端,而那边的recv 被主程 ...

  4. python 中的super()继承,搜索广度为先

    一.python中类的继承 1.1 单继承 在python 中我们可以这样来定义一个类:及继承它的子类 class Father: def __init__(self, mes): #1 父类的ini ...

  5. Bridge (br0) Network on Linux

    动手实践虚拟网络 - 每天5分钟玩转 OpenStack(10) - CloudMan - 博客园https://www.cnblogs.com/CloudMan6/p/5296573.html li ...

  6. Python解释器有哪些?Python解释器种类

    Python是一门解释器语言,代码想运行,必须通过解释器执行,Python存在多种解释器,分别基于不同语言开发,每个解释器有不同的特点,但都能正常运行Python代码,以下是常用的五种Python解释 ...

  7. vue组件内部引入远程js文件

    之所以要做这个是因为,在一个组件内部需要引入一个js文件来定位.如果放在index.html,这样每个组件都会有这个js.所以需要在组件内单独引入. 第一种操作 Dom引入js: export def ...

  8. IdentityServer4【Topic】之定义资源

    Defining Resources 定义资源 你在系统中通常定义的第一件事是你想要保护的资源.这可能是你的用户的身份信息,比如个人资料数据或电子邮件地址,或者访问api. 你可以通过C#对象模型(内 ...

  9. Azure系列2.1.8 —— BlockEntry

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  10. 【转帖】Linux的历史----Linux内核剖析(一)

    Linux的历史----Linux内核剖析(一) 2015年04月09日 10:51:09 JeanCheng 阅读数:11351更多 所属专栏: Linux内核剖析    版权声明:本文为博主原创文 ...