资源预览内容
第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
第9页 / 共17页
第10页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
微机原理与应用上机指导书机械工程与自动化学院机械制造工程系实验一DEBUG 程序的使用验证性实验目的和要求:1 熟悉 windows 操作系统下模拟DOS 环境 debug 的进入和退出。2. 熟练掌握常用的 debug 子命令,会利用这些子命令进行简单程序的调试。实验条件:1.PC 机2.DOS 系统3.debug 调试程序实验内容:1 DEBUG的调用格式:drive: path debug d: path filename.extexample:调入ASM1.COM1) debug asm1.com2) debug-NASM1.COM -L 2退出DEBUG-Q3 DEBUG的子命令1)相关的 CPU 寄存器, FLAGS寄存器标志位状态,驱动器号标志码( 1)驱动器编号编号磁盘属性0A软盘1B软盘2C硬盘( 2)命令中使用地址。段地址:偏移量example:CS: 0100段地址:始偏移量末偏移量example:CS:01000110段地址:始偏移量长度example:CS:0100L10( 3)不调入文件时, IP 为 0100。( 4)SP 指向栈底。( 5)不调入文件时, AX 、BX 、CX、DX 、SI、DI 、BP 为 0。当调入文件时,文件长度装入 CX,大于 64K 时,其长度高位装入 BX ,均以字节为单位。( 6)CS、DS、SS、ES 位于内存空间对应段的底部, 既 DEBUG程序后的第一段。( 7)FLAGS寄存器标志位为NV(无溢出) UP(方向为增) EI (中断允许) PL(符号为正) NZ (非零) NA (无辅助进位) PO(奇) NC(无进位)( 8)DEBUG 子命令有 :A (汇编);U (反汇编);G(运行); T(跟踪) ; R(寄存器显示与修改) ; D(内存显示) ; E(内存修改);S(查找);F(填充);M(数据移动);C(数据比较);N(文件命名);W(存盘);L(装入);I(端口输入) ;O(端口输出) ;H(十六进制运算) ;Q(退出)。格式:R寄存器名功能:显示或修改CPU寄存器的内容,包括:AXBXCXDX; CSDSSSES; SPSIBPDIIPFLAGSFLAGS符号表标志位名置位 (1)复位 (0)OFOVNVDFDNUPIFEIDISFNGPLZFZRNZAFACNAPFPEPOCFCYNCExample : -R -R ;立即显示各寄存器的内容BX ;显示并修改BX 的内容BX0000: 0100-RF OV DN EI NG ZR AC PE CY- PONZ格式: A 起始地址 功能:从始地址汇编并把指令变成机器码;不指定始地址,默认为当前的CS:连续地址。Example : -A 0100 格式: U 始地址或 U 地址范围功能:将始地址起或地址范围的机器码反汇编显示出来。Example : -U 100 -U 100108格式: G= 始地址 断点地址功能 :从始地址运行程序,遇断点停。Example : -G=100 10d -G=100 格式: T= 始地址 跟踪条数 功能:从始地址运行一条或数条指令。Example : -T =100 -T -T=100 03 格式: D 始地址 或 D 地址范围 功能:显示内存十六进制数。Example : -D ( DS)-D100-D100120格式: E 始地址 数据表 功能:将用数据表的内容修改始地址连续的内存单元的内容;没给出数据表,在命令执行后逐个修改, 结束按回车 -往后修改按空格键; 往前修改按 -号键;空格和 -号键为单元间隔。Example : -E 010441 24 34( DS)-E 0104 0100 : 01044167格式: S 地址范围数据表功能:查找指定范围的数据表,找到显示地址,找不到返回提示符。Example : -S 100 0128CD 20格式: F 地址范围数据表功能:将地址范围的数据用数据表的内容填充,个数,将从重复使用数据表。如果地址表范围大于数据表Example : -F 6C02 : 01006C02: 010412 23 34 45格式: M源地址范围目的始地址功能:将源地址范围的内容装入到目的地址。Example : M 6C02 : 0100 6C02 :02007F38: 0100格式: C 源地址范围目的地址功能:将源地址范围的内容依次与目的地址的内容相比较,不同时显示:源地址源数据目的数据目的地址格式: N d : pfilename.ext功能:(当调入文件或写文件到盘时)给文件命名。格式: W 始地址或 W 始地址驱动器号始扇区扇区数功能:将从始地址开始,BX 和 CX 记录的字节长度写入到件中。N 命名的磁盘文或将始地址开始的内容,写入驱动器号标识磁盘的始扇区标定的扇数内容。格式: L 始地址 或 L 始地址 驱动器号 始扇区 扇区数功能:将N 命名的文件调入内存,文件长度存于盘中始扇区,标定扇区数装入到内存始地址中。格式: I端口地址功能:从端口地址读入一字节数据并显示。地址格式: O 端口地址字节值功能:将指定端口的字节传送到输出端口。可以按 CTRL-BREAK终止命令的执行。CX 和BX0FFH ;DX中;或从标识从 0 FFFFH。若命令产生相当多的输出行, 为在屏幕上看清楚, 可以按 CTRL-NUM LOCK 键暂停,按任一键继续。实验二汇编语言程序设计实验目的和要求:1 熟悉在DOS操作系统下使用较普遍的汇编程序MASM.EXE 。2. 练习在 DOS 操作系统下使用较普遍的连接程序LINK.EXE 。3. 学习汇编程序的使用,调试程序。实验要求:1.掌握DOS操作系统下的汇编程序MASM.EXE 和连接程序 LINK.EXE 。2. 加深对汇编程序的理解和认识。实验条件:1.PC 机2.DOS 系统3.汇编语言工作环境实验内容:一、汇编程序在 DOS系统下使用得较普遍的汇编程序是。MAXM.exe1. 汇编程序的主要工具(1) 地址计数器在每一段开始 ( 由 SEGMENT伪操作标识 ), 地址计数器被初始化为 0, 每处理一条指令 , 包括助记符指令、数据定义以及存储器分配等伪操作,地址计数器就增加一个值, 此值为该指令所需的字节数。 在汇编过程中, 地址计数器的内容就是当前正在被汇编的指令的偏移地址。( 2)符号表记录用户所定义的符号极其属性。( 3)机器指令表给出助记符表示的指令与机器指令的对应关系。( 4)伪操作表给出所有伪操作及相关信息。2汇编程序的主要功能( 1) 检查汇编语言源程序,若程序中有不符汇编程序要求的语句,给出错误信息;( 2) 利用地址计数器确定被汇编的每条指令的偏移地址;( 3) 确定各符号的偏移地址,建立符号表;( 4) 利用符号表、机器指令表和伪操作表把助记符指令翻译成机器语言指令,此时变量和符号均为浮动地址, 段地址尚不定, 假如指令的操作数涉及到变量或标号,则指令中的地址为浮动值;( 5) 产生源程序的目标代码文件,供连接程序用。( 6) 产生列表文件,给出源程序指令相对应的地址计数器的值和符号表,对于有浮动地址的指令在其二进制指令后以R 标识。3汇编程序的使用将 DOS下所有相关路径设好,使用汇编程序的完整格式为:MASM/optionSource(.asm),Object(.obj),Listing(.lst),Crossref(.crf); 命令 MASM后跟若干参数,这些参数需用空格或逗号等分隔符分开。放在 中的参数是可选参数,表示可以不紧跟在命令 MASM后输入,可在命令执行后,按给出的提示输入;也可不输入,而使用命令的缺省值作为参数。放在()中的扩展名为缺省时的默认值。/option命令的动作选项,由符号“/ ”引导。利用命令MASM/HELP可查看所有动作选项及其说明。Source(.asm)指定汇编源程序的文件名,缺省的扩展名为.asm 。Object(.obj)指定目标文件名,缺省的目标文件名与源程序名相同,缺省的扩展名为.obj。Listing(.lst)指定列表文件名,缺省的扩展名为.lst。缺省情况是不生成列表文件。Crossref(.crf)指定交叉参考文件名,缺省的扩展名为.crf。缺省情况是不生成交
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号