例: MOV AL,E 指令执行后:(AL)=45H MOV指令的语法形式 (1) MOV mem/regl,reg2其中:mem:存储器单元 (2) MOV regl, mem/reg reg: 寄存器 (3)MOV mem/reg, imm Imm: 立即数 例:判断下列指令是否合法 MOV DS. AX MOV CS, AX 目的操作数不允许是CS段寄存器 MOV CH,4050HX数据类型不匹配 MOV DL, 5BH MOV DX,5BH√ MOV DX. AL ×数据类型不匹配 MOV VAl,VA2×不允许两个操作数都是存储器单元 MOV 45. DL 目的操作数不允许是立即数next
例: MOV AL, E 指令执行后: (AL)= 45H MOV指令的 语法形式: (1)MOV mem/regl,reg2 (2)MOV regl,mem/reg2 (3)MOV mem/reg,imm 其中:mem:存储器单元 reg: 寄存器 imm:立即数 例: 判断下列指令是否合法: MOV DS,AX 不允许两个操作数都是存储器单元 MOV CS,AX MOV CH,4050H MOV DL,5BH MOV DX,5BH MOV DX,AL MOV VA1,VA2 MOV 45,DL 目的操作数不允许是CS段寄存器 目的操作数不允许是立即数 数据类型不匹配 数据类型不匹配 next
调试工具 DEBUG简介 两种进入 DEBUC的方式: (1)H> DEBUG程序名参数 (2) H>DEBUG (命令提示符) 常用命令:(单字母命令,默认十六进制,但不加H) 命令及功能 格式 例子 1.D显示内存单元D地址 D100 D地址范围 -D100107 2.E修改内存单元E地址字节串-E200 Hello E地址 E100 1742:010070.89 3.N定义文件名N文件名 -N FILE. COM
调试工具DEBUG简介 两种进入DEBUG的方式: (1)H>DEBUG 程序名 参数 (2)H>DEBUG - ( 命令提示符 ) 常用命令: (单字母命令, 默认十六进制, 但不加H ) 命令及功能 格式 例子 1. D 显示内存单元 D 地址 -D 100 D 地址范围 -D 100 107 2. E 修改内存单元 E 地址 字节串 -E 200 ‘Hello’ E 地址 -E 100 1742:0100 70.89 3. N 定义文件名 N 文件名 -N FILE.COM
命令及功能 格式 例子 4.R显示寄存器R寄存器名 R dX R 5.A汇编源程序A地址 A100 汇编 符号语言指令 二进制代码指令 反汇编 6.U反汇编 U地址范围 U100108 7.L装入文件 L地址 -L100 8.W写文件 W起始地址 W100 操作过程: )-n File.cOm (定义文件名 2)R BX (文件长度送BXCX) RCⅩ (3)W100(写文件,数据区的内存起始地址为100)
命令及功能 格式 例子 4. R 显示寄存器 R 寄存器名 -R DX R 6. U 反汇编 U 地址范围 -U 100 108 5. A 汇编源程序 A 地址 -A 100 汇编 符号语言指令 二进制代码指令 反汇编 7. L 装入文件 L 地址 -L 100 8. W 写文件 W 起始地址 -W 100 操作过程: (1) –N FILE.COM (定义文件名) (2) –R BX (文件长度送BX:CX) –R CX (3) –W 100 (写文件, 数据区的内存起始地址为100)
命令及功能 格式 例子 9.G执行程序G=起始地址 G=200 10.T跟踪程序T=起始地址 T=200 按地址逐条跟踪指令 11.P跟踪程序P=起始地址 P=200 根据书写的指令逐条整条跟踪 上机程序例子 显示一个字符 A100 MOV DL. 41 A DL MOV AH. 2 功能号2->AH INT 21 DOS功能调用(显示一个字符) INT 20 结束程序执行 G=100 A
命令及功能 格式 例子 9. G 执行程序 G =起始地址 -G =200 10. T 跟踪程序 T =起始地址 -T =200 按地址逐条跟踪指令 11. P 跟踪程序 P =起始地址 -P =200 根据书写的指令逐条整条跟踪 上机程序例子: 1.显示一个字符 -A 100 MOV DL, 41 ; ‘A’ -> DL MOV AH, 2 ; 功能号2->AH INT 21 ; DOS 功能调用(显示一个字符) INT 20 ; 结束程序执行 -G =100 A
2.大写→小写 MOV DL. 41 a-> DL OR DL. 20 大写-小写 MOV AH. 2 功能号2→>AH INT 21 DOS功能调用(显示一个字符) INT 20 结束程序执行 3.显示字符串 A100 MOV DX,120;字符串地址->DX MOV aH. 9 功能号9->AH INT 21 DOS功能调用(显示一个字符串) NT 20 结束程序执行 E 120 How do you do.s G=100 How do you do
2. 大写->小写 MOV DL, 41 ; ‘A’ -> DL OR DL, 20 ; 大写->小写 MOV AH, 2 ; 功能号2->AH INT 21 ; DOS 功能调用(显示一个字符) INT 20 ; 结束程序执行 3. 显示字符串 -A 100 MOV DX, 120 ; 字符串地址 -> DX MOV AH, 9 ; 功能号9->AH INT 21 ; DOS 功能调用(显示一个字符串) INT 20 ; 结束程序执行 -E 120 ‘How do you do.$’ -G =100 ‘How do you do.’