微机原理及应用 http://xweicheng.ys168.com scxweicheng@yahoo.com.cn 主讲:谢维成 西华大学 电气信息学院 1
实验一 微机硬件结构及汇编指令运行的认识 DEBUG的主要命令 1)显示存储单元的命令D(DUMP),格式为: 实验一 微机硬件结构及汇编指令运行的认识 DEBUG的主要命令 1)显示存储单元的命令D(DUMP),格式为: -D [address] 或 -D [range] 2
2)修改存储单元内容的命令E 第一种格式可以用给定的内容表来替代指定范围的存储单元内容。命令格式如下: —E address [list] 例如,—E DS:100 F3’XYZ’8D 第二种格式则是采用逐个单元相继修改的方法:—E address 例如,—e cs:100 则可能显示为: 18E4:0100 89.— 如果需要把该单元的内容修改为78,再按“空格”键可接着显示下一个单元的内容,如下:18E4:0100 89.78 1B._-+ 3
3)检查和修改寄存器命令R 3)检查和修改寄存器内容的命令R(Register): 显示CPU内所有寄存器内容和标志位状态,其格式为:—R,例如, —r AX=0000 BX=0000 CX=010A DX=0000 … 显示和修改某个寄存器内容,其格式为: —R register name , 例如,键入 —r ax 系统将响应如下: AX FIF4 : 即AX寄存器的当前内容为FIF4,如不修改则按E 键,否则,可键入欲修改的内容 4
知识点复习 4)运行命令G(G0),其格式为 -G [=address1][ address2][ address3…..]] 其中,地址1指定了运行的起始地址,如不指定则从当前的CS:IP开始运行。后面的地址均为断点地址,当指令执行到断点时,就停止执行并显示当前所有寄存器及标志位的内容,和下一条将要执行的指令。 5
6)汇编命令A(Assemble), 6)汇编命令A(Assemble),其格式为: -A[address] 该命令允许键入汇编语言语句,并能把它们汇编成机器代码,相继地存放在从指定地址开始地存储区中。必须注意:DEBUG把键入的数字均看成十六进制数,则其后应加以说明,如100D。 6
7)反汇编命令U (Unassemble) 从指定地址开始,反汇编32个字节,其格式为: -U[address] 例如: -u100 18E4:0100 C70604023801 MOV WORD PTR [0204],0138 18E4:0106B C70606020002 MOV WORD PTR[0206],0200 18E4:010C C70608020202 MOV WORD PTR[0208],0202 18E4:0112 BB0402 MOV BX,0204 18E4:0115 E80200 CALL 011A 18E4:0118 CD20 INT 20 18E4:011A 50 PUSH AX 18E4:011B 51 PUSH CX 7
8)命名命令N (Name) 8)命名命令N(Name),其格式为: —N fiespecs[fiespecs] 命令把两个文件标志符格式化在CS:5CH和CS:6CH的两个文件控制块中,以便在其后用L或W命令把文件装入或存盘。Fiespecs的格式可以是: [d:][path] fiespecs [.ext] 例如, —N myprog 8
10)写命令W(Write) 10)写命令W(Write),有两种功能。 把数据写入磁盘的指定扇区。其格式为: —W address drive sector sector 把数据写入指定的文件中。其格式为: —W[address] 此命令把指定的存储区中的数据写入由CS:5CH处的文件控制所指定的文件中。如未指定地址则数据从CS:0100开始。要写入文件的字节数应先放入BX和CX中。 9
11)退出DEBUG命令Q (Quit) 11)退出DEBUG命令Q (Quit),其格式为: —Q 它退出DEBUG,返回DOS。本命令并无存盘功能,如需存盘应先使用W命令。 10
DEBUG上机流程 开 始 认识微机及实验微机的硬件结构 A编辑 N命名 W保存 跟踪调试 正确 不正确 结束 R BX :0000 程序file.com 或 file.exe 不正确 R CX :字节数 跟踪调试 结果正确? 正确 认识微机及实验微机的硬件结构 DEBUG上机流程 11
实验程序举例 MOV SI, 200H MOV BX, 300H MOV CX, 000AH MOV AL, 00H L0: MOV [SI], AL INC SI INC AL DEC CX JNZ L0 L1: MOV AL, [SI] MOV [BX], AL INC BX LOOP L1 12
实验一 教学要求 掌握DEBUG 的使用方法; 掌握指令的在DEBUG下的跟踪调试方法; 掌握在DEBUG下写简短COM和EXE文件的方法; 实验一 教学要求 掌握DEBUG 的使用方法; 掌握指令的在DEBUG下的跟踪调试方法; 掌握在DEBUG下写简短COM和EXE文件的方法; 习题与思考题:对实验程序做注释 13