MS-DOS 系统汇编环境之DOSBOX+vim
经过虚拟机的体验,我发现还是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
配置文件路径:
- (Windows) "开始"->"所有程序"->DOSBox-0.74->Options
- (Linux)
~/.dosbox/dosbox-0.74.conf
- (MAC OS X)
~/Library/Preferences/"DOSBox 0.74 Preferences"
四、DOSBOX 快捷键及 MS-DOS 命令
- 全屏/退出全屏:
alt+enter
- 释放鼠标:
ctrl+F10
dir
显示目录内容,可选参数:/w
只显示文件名,/P
显示部分内容,*.exe
筛选出可执行文件cd
进入目录,cd ..
退回上一级目录- .
md
新建目录 rd
删除目录cls
清空屏幕copy
复制文件del
删除文件deltree
删除整个文件夹ren
重命名ver
显示当前版本号type
输出文本文件内容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.汇编环境的搭建:DOSBox的安装
前言 DOSBox是一款在windows系统运行DOS程序的环境模拟器.可以解决在64位机中汇编程序编译调试等问题. 本文以 DOSBox 0.74 为例,汇编编译程序采用MASM6. 第一步下载相关 ...
- MS-DOS 6.22 +Vim+masm 汇编环境
安装vim 个人习惯用 vim 编辑,因此稍微折腾了一下.不用这么麻烦直接用 edit 编辑也是可以的. 原来安装的 MS-DOS 7.10 虚拟机安装好vim后无法运行,所以改用了 MS-DOS 6 ...
- windows汇编环境配置
原文地址 软件下载 需要的软件已经打包,包括dosbox和MASM.如果没有这两个软件可以在下面的地址下载. http://hjwblog.com/game/汇编环境.zip 点击下载 安装dosbo ...
- [原]Sublime Text3 搭建16位汇编环境(windows)
最近在学习王爽的<汇编程序>,参考<简单OS开发前奏<一>EDITPLUS+MASM32搭建汇编开发环境(16位+32位)>http://www.cnblogs.c ...
- win10汇编环境的搭建
第一步:下载DOSBox0.74-win32-installer 可以去官网:http://www.dosbox.com/ 或者链接:https://pan.baidu.com/s/1UA77qTLO ...
- odoo10源码win系统开发环境安装图文教程
前言 odoo10的源码安装教程不太完整或对新手不够友好,本新手再次整合出一份友好的新手教程(老鸟慎入) 准备工作 一个干净的window系统(事先没有其他python环境的系统)如果怕系统污染可以先 ...
- 基于DRL和TORCS的自动驾驶仿真系统——之环境配置
基于DRL和TORCS的自动驾驶仿真系统 --之环境配置 玩TORCS和DRL差不多有一整年了,开始的摸爬滚打都是不断碰壁过来的,近来在参与CMU的DRL10703课程学习和翻译志愿者工作,也将自己以 ...
- Linux系统Java环境配置
1.卸载Linux系统自带的JDK java -version rpm -qa | grep -i java 我们要删除掉自带的JDK环境 rpm -e --nodeps java-1.6.0-ope ...
- win7 64位环境下配置汇编环境和程序设计
下载dosbox,并解压安装 下载地址: http://pan.baidu.com/s/1eRJbJAq 默认安装到C:\Program Files (x86)\DOSBox-0.74 安装成功后,双 ...
随机推荐
- CodeForces - 1051D-简单DP
这个题叫问给一个2*N的方块,你可以在每一个上填任意黑或者白两种,假设颜色相同的并且有公共边的就被认为是一块,问组成K块有多少种方案. 这题开始感觉无从下手,像组合数学又不像的,其实这个题的关键在于, ...
- Sparse Principal Component Analysis via Rotation and Truncation
目录 对以往一些SPCA算法复杂度的总结 Notation 论文概述 原始问题 问题的变种 算法 固定\(X\),计算\(R\) 固定\(R\),求解\(X\) (\(Z =VR^{\mathrm{T ...
- sql中return和returns的区别
用户定义函数中,用RETURNS 子句指定该函数返回值的数据类型 return用于返回具体的值/值变量
- RabbitMQ防止消息丢失
转载请注明出处 0.目录 RabbitMQ-从基础到实战(1)— Hello RabbitMQ RabbitMQ-从基础到实战(3)— 消息的交换 1.简介 RabbitMQ中,消息丢失可以简单的分为 ...
- YCSB报": No such file or directory"异常
异常信息如下: 文件路径.权限都没有问题. 上网遍寻无果,安装流程与官网一致,开始怀疑是环境问题,后来用别人能用的YCSB复制到本地,却能正常运行. 后来修改了ycsb文件,加了个空格,保存退出,再运 ...
- git [command line] fatal: Authentication failed for
fatal: Authentication failed for https://www.jianshu.com/p/8a7f257e07b8 git.exe fetch -v --progress ...
- b,B,KB,MB,GB,TB,PB,EB,ZB,YB,BB,NB,DB的含义,之间的关系
1bit=1位2进制信息 1B (byte 字节)1KB(Kilobyte 千字节)=2(10)B=1024B=2(10)B: 1MB(Megabyte 兆字节)=2(10)KB=1024KB=2(2 ...
- [翻译]在asp.net core2.0 OpenID Connect Handler中丢失了声明(CLaims)?
注:这是一篇翻译,来自这里.这篇文章讲述了在asp.net core2.0中使用openid connect handler的过程中解析不到你想要的claim时,你可以参考这篇文章. Missing ...
- 剑指offer(14)
题目: 操作给定的二叉树,将其变换为源二叉树的镜像. 思路: 这里有个细节,我们发现,6节点的子节点在操作之后并没有发生变化,所以等会我们在交换的时候,交换的不是节点的数值,而是整个节点. 另外我们进 ...
- PhpStorm 配置链接远程虚拟机
安装好了 PhpStorm 之后,打开项目文件夹,接着点击工具栏 Tools: 2.接着点击 tools>Deployment: 3.点击Configuration 开始配置 4.填好箭头 ...