MS-DOS 6.22 +Vim+masm 汇编环境
安装vim
个人习惯用 vim 编辑,因此稍微折腾了一下。不用这么麻烦直接用 edit 编辑也是可以的。
原来安装的 MS-DOS 7.10 虚拟机安装好vim后无法运行,所以改用了 MS-DOS 6.22。
vmware中安装好 dos 虚拟机,将下载好的 vim for dos 镜像文件(.iso)加载到虚拟机的 CD/DVD 中,进入相应盘,用LCOPY拷贝到相应磁盘,比如从d盘拷贝到c盘:
D:\> LCOPY D:\* C:\ /R/S
D:\> C:
C:\> SETUPVIM
LCOPY.exe是在D盘,所以命令要在D盘执行。现在也拷贝到C盘了。
然后就一路安装。
网上的这个直接用还不行,DOS在7.0以前的版本文件名最多8个字节,因此需要修改一些文件名,vimrc_example.vim
会变成vimrc~1.vim
,用move命令改回来就好了,然后c:\dos\vim.bat
中的一些路径的引号也要去掉,才能正常使用。
_vimrc
在C:\
根目录下。
安装 masm
从网上下载好 masm后,不能直接放到虚拟机里的 DOS 系统中,需要转成磁盘映像。但是,用mac 自带的磁盘工具转出来的iso或者cdr,文件格式是 macOS 扩展,DOS系统不能处理。因此要找个 windows 系统,在上面用UltraISO 将文件夹做成 iso。然后加载到虚拟机的 CD/DVD 中。也拷贝到c盘。
编写asm的Hello world程序
vim hello.asm
创建文件,编辑内容为
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 AH,4CH
INT 21H
CODE ENDS
END START
[ESC]然后:x
保存退出。
C:> masm hello
一路回车
接着链接,也是一路回车:
C:> link hello
运行:
┆凉┆暖┆降┆等┆幸┆我┆我┆里┆将┆ ┆可┆有┆谦┆戮┆那┆ ┆大┆始┆ ┆然┆
┆薄┆一┆临┆你┆的┆还┆没┆ ┆来┆ ┆是┆来┆逊┆没┆些┆ ┆雁┆终┆ ┆而┆
┆ ┆暖┆ ┆如┆地┆站┆有┆ ┆也┆ ┆我┆ ┆的┆有┆精┆ ┆也┆没┆ ┆你┆
┆ ┆这┆ ┆试┆方┆在┆逃┆ ┆会┆ ┆在┆ ┆清┆来┆准┆ ┆没┆有┆ ┆没┆
┆ ┆生┆ ┆探┆ ┆最┆避┆ ┆在┆ ┆这┆ ┆晨┆ ┆的┆ ┆有┆来┆ ┆有┆
┆ ┆之┆ ┆般┆ ┆不┆ ┆ ┆这┆ ┆里┆ ┆没┆ ┆杀┆ ┆来┆ ┆ ┆来┆