编辑程序步骤
- 编辑源程序,扩展名为 .asm
- 汇编:将源程序文件转为目标文件,目标文件扩展名 .obj
- 连接:将目标文件转为可执行文件,可执行文件扩展名 .exe
指令
-
挂载
mount 目标盘符 本地盘符
-
清屏:cls
-
删除文件:del 文件名
-
查看文件:type 文件名
-
汇编指令:masm 文件名
-
连接指令:link 文件名
编写程序
创建源程序
-
指令 edit
-
语法
edit 文件名.asm
-
若文件已存在则打开该文件继续编写,若不存在则会创建一个新文件。
段定义
-
指令:segment(开始) ends(结束)
-
段名:不得超过八个字符
-
语法
段名 segment 段名 ends
段关联
-
指令:assume
-
类型:CS(代码段)、DS(数据段)、SS(堆栈段)、ES(附加段)
-
语法:
assume 类型:段名
-
例:定义一个代码段,段名为 code
code segment assume cs:code code ends
存值
-
指令:mov
-
通用寄存器:AX、BX、CX、DX
-
语法mo
mov 通用寄存器,值
- 通用寄存器:目的操作数
- 值:源操作数
结束程序
mov ah,4ch
int 21h
指令分类
- 双操作数指令:用逗号分隔两个参数,逗号前面的称为目的操作数,逗号后面的叫原操作数。
- 单操作数指令
- 无操作数指令
- 所有双操作数指令中,目的操作数和源操作数类型必须匹配。
- 8086 指令中必须要有寄存器参与,除立即数寻址之外。
debug 指令
- 退出:q
- 查看 CPU 寄存器:r
- 反汇编指令:u
- 执行程序指令:g(g偏移地址)
- 查看内存单:d