04微机原理与接口技术课程设计指导书内容摘要:

“ ”,此时系统已在 DEBUG 管理下,可以键入 DEBUG 的各种命令进行调试。 命令输入不区分大小写,命令后带有参数时,两个 16 进制的参数间要有分界符。 利用Ctrl+Break 键可终止命令,返回 DEBUG 提示符。 当一个命令产生多行输入时,可用 Ctrl+Lock 键暂停上滚,按任一键继续显示下面内容。 2. DEBUG 的主要命令 ( 1)显示存储单元命令 D( Dump) 该命令有以下几种格式: D 地址:从指定地址起显示 80 个字节的内容。 微机原理与接口课程设计指导书 计算机应用教研室 /实验中心 第 7 页 共 62 页 D 范围:显示所指定范围的内容,指定范围为起始地址和终止地址。 D 显 示从上一个 D 命令的最后一个单元起后面的 80 个字节的内容。 在 D 未使用过的情况下,显示以 DS: 0100 为起始地址的 80 个字节的内容。 例: D 220 240 1CE2: 0220 C7 06 04 02 38 01 C7 06 06 02 00 02 C7 06 08 02 G„ „„ G„ 1CE2: 0230 02 02 BB 04 02 E8 02 00 – CD 20 50 51 56 57 8B 37 „。 „ h„ MPQVM. 7 1CE2: 0240 8B 其中, 0220`0240 为显示 的地址,中间为十六进制表示的自己内容,右边为用 ASCⅡ字符表示的字节内容,“ .”表示不可显示的 ASCⅡ码。 ( 2)修改存储单元内容的命令 E(Edit) 该命令有两种格式。 E 地址 [内容表 ]:用指定的内容表修改从指定地址开始的存储器中的内容。 例如: E DS: 120 F3 A5 ‗XYZ‘ 96 表示用 F A X、 Y、 Z、 96 共 6 个字节代替 DS: 120 ~ DS: 125 中的内容。 E 地址:逐个单元修改内容。 例如: E CS: 100 屏幕显示为: 18E4: 0100 用户可键入“ 78”修改此内容,在键入空格键显示下一个内容,不修改时可用空格键跳过,从而逐个修改存储器内容,直到回车键结束。 上例显示为: 18E4:0100 (.后为用户键入内容 ) ( 3)填入命令 F( File) F 范围 _(内容表):将内容表的内容填入指定的范围。 范围有两种表示方法。 F 开始地址 结束地址 填充内容 或 F 开始地址 L 填充长度填充内容 例如: F 18E4:0200 L10 00 将 0200H 单元开始的 16 个字节全部填入,直到内容表 中字节数超过指定范围,则忽略超过项。 若内容表中字节数小于指定范围,则反复填入,知道填满所有单元为止。 例如: F 210 229 ‘ Help’ 用包含 ―Help‖的字节填充,循环填充从 DS: 210H 到 229H 的存储器单元。 ( 4)检查和修改寄存器命令 R( Register) 该命令有三种格式: R:显示 CPU 内所有寄存器的内容和标志位状态。 例如: R AX= 0000 BX 0000 CX = 0106 DX= 0000 SP FFFE BP= 0000 SI = 0000 DI = 0000 DS=ICE2 ES=1CE2 SS=1CE2 CS=1CE2 IP=0100 NV UP DI PL NZ NA PO NC 微机原理与接口课程设计指导书 计算机应用教研室 /实验中心 第 8 页 共 62 页 1CE2: 0100 C70304023801 MOV WORD PTR[0204], 0138 R 寄存器名:显示和修改某一个寄存器内容。 例如: R AX 屏幕显示: AX 1200。 AX 当前内容为 1200 若不修改则按回车键,否则键入要修改的内容。 : 1000 ;将 AX 内容修改为 1000 RF:显示和修改标志位内容(除标志位 T 以外)。 例如: RF 屏幕显示: OV DN EI NG ZR AC PE CY PO NZ DI NV 若不修改则按回车键,否则键入要修改的内容,键入次序任意。 状态标志的表示符号如表 21 所示。 表 2 1 标 志 状 态 的 表 示 符 号标 志 置 位 符 号 复 位 符 号 溢 出 O F O V N V 方 向 D F D N U P 中 断 I F E I D I 符 号 S F N G P L 零 位 Z F Z R N Z 辅 助 A F A C N A 奇 偶 P F P E P O 进 位 C F C Y N C ( 5)运行命令 G( GO) 该命令的格式为: G=地址 1 地址 2 地址 3„ G 命令开始运行被调试的程序,运行中遇到断点时,则停止运行,并显示当前寄存器、标志位的内容和下一条将要执行的指令,按下回车键从断点处继续向下运行。 地址 1 为程序运行的起始地址,如不指 定,则从当前的 CS: IP 开始运行,地址 地址 3 为设定的断点地址,断点最多可设 10 个。 要注意的是,当执行 G 命令时,断点地址里的指令码被 INT3( CCH)所代替,产生中断并显示各寄存器内容后,再恢复被 CCH 取代的指令码,但若程序执行不到某个中断点,原设断点的地址中的指令码被 CCH 代替后不能恢复。 用 G 命令不带参数时,程序运行到结束为止。 程序执行完成屏幕显示: Program Terminated Normally 程序要重新装入后才能再次运行。 6)跟踪命令 T( Trace) 该命令有两种格式: T=地址 : 单条指令追踪,执行指定地址的一条指令,并显示 CPU 所有寄存器内容、标志位的状态及下条指令的地址和内容。 若命令中没有指定地址,则从当前 CS: IP 处开始执行。 T=地址 N:多多指令追踪,从指定地址开始执行指令,共执行指定的 N 条后停止,每执行一条指令就显示 CPU 中所有寄存器内容,标志位的状态及下条指令的地址和内容。 微机原理与接口课程设计指导书 计算机应用教研室 /实验中心 第 9 页 共 62 页 ( 7)汇编命令 A( Assemble) 该命令的格式为: A 地址 从指定地址开始,输入汇编语言的语句, DEBUG 将其汇编成机器码,并存放在指定地址开始的存储区中。 若没有指定地址,则从上一个汇编 命令的最后一个单元开始存放。 若未用过 A 命令,则从 CS:0100 单元开始存放。 另外,输入必须是十六进制数,如要输入十进制数,后面要加“ D”说明。 ( 8)反汇编命令 U( Unassemble) 该命令有两种格式: U 地址:从指定地址开始,反汇编 32 个字节。 若没有指定地址,则从上一个 U 命令继续向下反汇编,若没有用过 U 命令,则从 CS: 100 开始反汇编。 U 范围:对指定范围的存储单元反汇编,可指定起始地址、结束地址,也可指定起始地址及长度。 例如,执行: U 1CE2: 0110 011A 或 U 1CE2: 0110 L0B 屏幕显示: 1CE2: 0110 BB 0402 MOV BX, 0204 1CE2: 0115 E8 0200 CALL 0118 1CE2: 0116 CD20 INT 20 1CE2: 0118 50 PUSH AX 1CE2: 0119 56 PUSH SI 1CE2: 011A 8B37 MOV SI, [BX] ( 9)命名命令 N( Name) 该命令的格式为: N [D: ] [PATH] [] N 命令把两个文件标识符格式化在 CS: 5CH 和 CS: 6CH 的两个文件控制块中,使文件能用 L 命令装入或用 W 命令存盘。 例如,将文件 EXAMLE 装入到存储器可使用以下命令: N EXAMPLE L 在 DEBUG 中可用 N, L 命令将另一个文件装入到存储器中调试。 ( 10)装入命令 L( LOAD) 该命令有两种格式: L 地址:装入已在 CS: 5CH 中进行过格式化的文件控制块所指定的文件到指定的内存地址中,若指定地址,则装如到 CS: 0100 开始的存储区中。 L 地址 驱动器 扇区 1 扇区 2:将磁盘上指定扇区范围的内容装入到从存储器指定的地址开始的区域中。 ( 11)写命令 W( Write) 该命令有两种格式: W 地址:把存储器中指定地址的数据写入由 CS: 5CH 处的文件控制块所指定的文件中。 若未指定地址,则从 CS: 0100 地址开始,要写入文件的字节数预先置入 BX 和 CX 中。 W 地址 驱动器 扇区 1 扇区 2:把存储器中从指定地址开始的数据写入到磁盘的指定扇区微机原理与接口课程设计指导书 计算机应用教研室 /实验中心 第 10 页 共 62 页 中。 例如 ADEBUG L 0100 0 0 1。 读 A 盘 0 扇区到内存 0100,读 1 个扇区 R CX ;将内存 0100 中的内容写到 B 盘 0 扇区,写 1 个扇区 ( 12)输入命令 I( Input) 输入命令的格式为: I 命令从指定端口输入一个字节数据并显示出来。 例如: I 34 5F ;从端口 34 输入一个字节为 5FH ( 13)输入命令 O( Output) 输入命令的格式式为: o 断口地址 O 命令向指定端口输入一个指定址值。 例如: o 34 6E。 从端口 34 输出值 6EH ( 14)退出命令 Q( Quit) 此命令退出 DEBUG,并返回到 DOS,但无存盘 功能。 ( 15)其他命令 DEBUG 还有以下一些其他命令。 1)比较命令 C( Compare) c _ 范围地址 ;将指定范围的内容与指定地址内容比较: C 的地址范围表示方式和 F 类似,两种方法: c 源开始地址 源结束地址 目的开始地址 或 c 源开始地址 L 传送长度 目的开始地址 例如: c 050 070 200 把从 DS: 050 到 DS: 070 的字节从 DS: 200 开始的字节进行比较。 该操作显示不相等的字节的地址和内容。 2) 16 进制数计算命令 H( Hex) H 数字 1,数字 2 ;同时计算两个 16 进制数字的和与差 例如: H OF 8 17 07 结果所显示的 17H 是 0FH 和 8H 的和, 07H 是 0FH 和 8H 的差。 3)传送命令 M( Move) M 范围地址 ;将指定范围的内容传送到指定地址处 M 的地址范围表示方式和 F 类似,有两种方法: M 源开始地址 源结束地址 目的的开始地址 或 M 源开始地址 L 传送长度 目的开始地址 例如: 微机原理与接口课程设计指导书 计算机应用教研室 /实验。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。