收藏 分享(赏)

微机原理 实验.ppt

上传人:hwpkd79526 文档编号:7092738 上传时间:2019-05-05 格式:PPT 页数:43 大小:288KB
下载 相关 举报
微机原理 实验.ppt_第1页
第1页 / 共43页
微机原理 实验.ppt_第2页
第2页 / 共43页
微机原理 实验.ppt_第3页
第3页 / 共43页
微机原理 实验.ppt_第4页
第4页 / 共43页
微机原理 实验.ppt_第5页
第5页 / 共43页
点击查看更多>>
资源描述

1、1,微机原理实验 课程实施计划 按教学计划,共安排4个实验: 实验1 上机过程与DEBUG应用 和寻址方式练习 (讲义中的实验1.2) 实验2 串处理程序设计 (讲义中的实验1.4)程序设计(实验1.5) 实验3 循环程序设计(实验1.6) 实验4 I/O接口实验(实验2.3,2.4),2,考核办法 实验课成绩管理方法:微机原理实验课成绩必需达到及格,理论课成绩有效;实验课成绩不及格者,理论课成绩视为不及格。 实验课成绩计算方法:实验课成绩=各个实验的平均成绩。 单个实验成绩考核方法:每个实验的成绩分为两个部分:一个为实验验收成绩,另一部分为报告成绩。 实验验收成绩由任课教师在学生做完实验后,

2、根据学生的实验表现、实验结果的正确与否等因素给与优、良、中、及格、不及格的评分档次。 批改实验报告时,根据报告的完整性、正确性和工整性等,把验收成绩向上或向下浮动一个档次作为该次实验的最终成绩。 注:无教师印章(或签名)的原始记录纸,该次实验成绩计为0。,3,实验报告要求 格式规范,书写认真,字迹清晰,流程完整.书写实验题目、实验目的、实验仪器与器材、实验原理与任务、实验体会与建议等内容.根据具体任务,给出相应的实验数据、硬件电路图、流程图及程序清单.,4,注意事项 进入实验室者不允许携带、食用各种食物,不得乱扔废纸、杂物。 爱护实验设备,实验结束后应整理好设备、导线、工具等,并由教师验收。

3、每次实验结束后, 留人打扫卫生并登记姓名,每人至少打扫卫生一次。 按课表时间参加实验,逾期不补。,5,汇编语言上机需要的软件:,目标文件 . OBJ,源文件 . ASM,可执行文件 . EXE,1. 文本编辑器:EDIT.COM 用该文件,建立/打开/编辑源文件,2.汇编程序: MASM.EXE 汇编生成 同名目标文件,3.连接程序: LINK.EXE 汇编生成同名 可执行文件,4.调试程序:DEBUG.EXE 在DEBUG下 运行程序,6,开机过程 在登录界面中选2,进入MS-DOS环境 系统虚拟盘提示符为 D: 实验的所有操作均在D盘下进行 DOS命令:键入HELP可以察看所有的DOS命令

4、 DIR 列文件目录 如 DIR *.ASM 列.ASM文件目录DIR/P 分页列文件目录,7,目标文件 . OBJ,源文件 . ASM,可执行文件 . EXE,1. 文本编辑器:EDIT.COM 用该文件,建立/打开/编辑源文件,2.汇编程序: MASM.EXE 汇编生成 同名目标文件,3.连接程序: LINK.EXE 汇编生成同名 可执行文件,如果在Windows下做实验,请把上述前3个文件放在E盘一个文件夹中(如MASM)。 单击 进入DOS模式 E: 变换盘符 CD MASM ;进入MASM文件夹(子目录) 将来用户建立的所有文件全放在该文件夹中。,4.调试程序:DEBUG.EXE 在

5、DEBUG下 运行程序,8,实验一 上机过程及动态调试DEBUG应用 实验目的: 学习EDIT,MASM,LINK及 DEBUG等工具软件的使用方法. 深入了解DEBUG动态调试软件的应用,掌握DEBUG命令的使用方法. 实际感受段地址,偏移地址,存储器组织及CPU寄存器等概念,9,实验任务把内存单元DATA1和DATA2中的两个字相加,结果存入SUM单元。 上机过程和方法 以该任务为例,说明上机过程和实验方法。 建立源文件 .ASM利用DOS下的全屏幕编辑软件EDIT,形成源文件 D:EDIT 文件名.ASM ;新建一个.ASM 或 打开一个.ASM;热键Alt选菜单,10,新建文件,打开文

6、件,保存文件,退出文本编辑器,换名保存文件,用热键Alt激活菜单 用 和 选菜单项 回车打开下拉式选菜,11,上机过程和方法 1. 建立源程序 .ASM,或 输入源程序,新建一个.ASM文件 或 打开一个.ASM文件,12,STACK SEGMENT PARA STACK STACK DW 100H DUP (?) TOP LABEL WORD STACK ENDSDATA SEGMENT DATA1 DW 1234HDATA2 DW 5678HSUM DW ? DATA ENDS,13,CODE SEGMENT MAIN PROC FARASSUME CS: CODE,DS:DATA,SS:

7、STACK START:MOV AX, STACK MOV SS, AXMOV SP, OFFSET TOPPUSH DSSUB AX,AXPUSH AXMOV AX, DATAMOV DS, AXMOV AX, DATA1ADD AX, DATA2 MOV SUM, AXRET ;MOV AH,4CH;INT 21H MAIN ENDPCODE ENDSEND START,14,2. 汇编生成 .OBJ文件 在EDIT文本编辑器中建立好源程序后,用Alt键激活菜单,存盘,并退出EDIT文本编辑器。在D盘下汇编: D:MASM add(文件名) Object filename文件名.OBJSo

8、urce listingNUL.LSTCorss refernceNUL.CRF0 Warning Errors 0 Sever Errors,15,注意观察出错信息 记住出错行号 再进入文本编辑器修改,16,注意: 汇编只能发现语法错误,而不能发现逻辑错误。 即,错误个数是0,并不表示程序功能正确。,如,汇编不能发现类似这样的逻辑错误,17,3. 连接生成 .EXE文件 当汇编无语法错误时,进行连接生成.EXE文件 D:LINK addRun file .EXEList fileNUL.MAPLibraies.LIB注意:使用LINK命令时只键入主文件名,不能带扩展名。,18,上机过程小结

9、1.建立源程序 .ASMD:EDIT ADD.ASM 2.汇编生成 .OBJ 文件D:MASM ADD 3.连接生成 .EXE文件D:LINK ADD ,19,4. 启动DEBUG对 .EXE文件进行调试D:DEBUG ADD.EXE (为DEBUG的提示符)也可用下列方法启动DEBUGD :DEBUG ;启动DEBUG N ADD.EXE ;指定ADD.EXE文件 L ;装入被指定的文件 ,20,对ADD.EXE文件进行反汇编U命令 U CS:0000 ;列反汇编清单,代码段段地址值 由系统自动分配段地址 系统状态不同,其段地址值可能不同,故不要相互对答案。,指令偏移地址值,指令机器码,指令

10、助记符,最后一条指令,21,U命令用法 上述命令从CS段偏移地址0000开始反汇编32个字节。在以上的反汇编清单中,最左一列是程序的段地址,第二列是偏移地址,然后依次是指令的机器码与助记符。U 在32个字节的指令代码显示完之后,可再次使用U命令对后续代码进行反汇编,在此,U命令之后省略了地址,则从上一个U命令的最后一条指令的下一个字节开始反汇编32个字节。,22,回答问题: 问题1:ADD.EXE装入内存后,其数据段的段地址是 。在未运行ADD.EXE程序前,数据段的段地址是否已装入到DS寄存器中?否(请选择回答:是/否) 问题2:反汇编清单中倒数第一行(按实际显示行)是不是ADD.EXE程序

11、中的指令? (请选择:是/否),23,检查数据段中的数据D命令D 数据段段地址:偏移地址(0000)D命令从给定地址开始连续显示内存单元中的数据,每行显示16个字节,每行的显示格式为段地址:偏移地址 16个字节数据 及各字节数据所对应的ASCII码。,24,D命令的显示格式,数据段段地址值,偏移地址,数 据,对应ASCII码,25,任务一:用D命令,填写表1,表1 : 数据存储情况,26,运行程序G命令,G = CS:0000 001B,27,任务二:执行程序后,用命令填写表,表 运行结果,28,任务三:修改DATA1和DATA2 的数据,重新执行程序后,用命令填写表3,表 另一组运行结果,2

12、9,修改内存单元内容E命令,E 1500:0000 则显示1500:0000单元内容1500:0000 24. 例如:把1500:0000单元的内容修改成78 操作如下 :E 1500:0000 24. 78 36. (36为1500:0001单元的内容。用户可以不断修改相继单元的内容,若某一字节无需修改可用空格键跳过,直到用回车结束该命令为止 ),30,检查寄存器内容R命令,R R命令会显示/修改CPU 所有寄存器的内容,并给出程序执行前后各标志位的当前状态。在此,不再列出执行情况。 任务三:用命令修改DATA1和DATA2的数据,并用命令运行程序后,填写表,31,跟踪执行命令,逐条指令跟踪

13、 T 其功能是从给定地址起执行一条指令后停下来,显示各寄存器的内容、标志位的状态并给出将要执行的指令。,32,退出 DEBUGQ命令,Q Q 命令后退出DEBUG,返回DOS。,33,DEBUG动态调命令小结 U 反汇编 U CS:0000 G 运行程序 G= CS:0000 * D 显示内存内容 D * : * T 跟踪执行命令 E 修改内存内容 R 显示修改寄存器内容 N 指定文件 L 装入被指定的文件 Q 返回DOS,34,DATA1 SEGMENTM1 DB 0A0H,0A1H,0A2H,0A3H,0A4H,0A5H,0A6H,0A7H,M2 DB 0A8H,0A9H,0AAH,0AB

14、H,0ACH,0ADH,0AEH,0AFH DATA1 ENDSDATA2 SEGMENTN1 DB 0B0H,0B1H,0B2H,0B3H, 0B4H,0B5H, 0B6H,0B7H, N2 DB 0B8H,0B9H,0BAH,0BBH, 0BCH,0BDH,0BEH,0BFH DATA2 ENDSSTACK SEGMENT PARA STACK STACK DB 0C0H,0C1H,0C2H,0C3H, 0C4H,0C5H , 0C6H,0C7HDB 0C8H,0C9H,0CAH,0CBH, 0CCH,0CDH,0CEH,0CFHDW 100 DUP (?)TOP LABEL WORD S

15、TACK ENDS,35,实验1.3 寻址方式练习,实验目的: 1.掌握8086/8088的主要寻址方式 2.进一步掌握DEBUG动态调试命令的应用,36,实验任务,以下面的程序为例,练习8086/8088的立即寻址.寄存器寻址.直接寻址.寄存器间址.寄存器相对寻址等七种寻址方式,并完成后面四个任务为了方便调试程序,代码段中给出了行号,输入程序时请不要输入行号。程序清单如下:,37,CODE SEGMENT ASSUME CS: CODE,DS:DATA1,ES:DATA2,SS:STACK 1 START:MOV AX,DATA1 9 MOV DI,0002H 2 MOV DS,AX 10

16、MOV BP,0003H 3 MOV AX,DATA2 11 MOV BX,0004H 4 MOV ES,AX 12 MOV AL,100 5 MOV AX,STACK 13 MOV AL,BL 6 MOV SS,AX 14 MOV AL,M1 7 MOV SP,OFFSET TOP 15 MOV AL,BX 8 MOV SI,0001H 16 MOV AL,ES:BX,38,17 MOV AL,BP 18 MOV AL,BX+05H 19 MOV AL,M2BX 20 MOV AL,ES:N2BX 21 MOV AL,BXSI 22 MOV AL,M2BXSI 23 MOV AL,N2BXD

17、I 24 MOV AL,BPDI 25 MOV AH,4CH 26 INT 21H CODE ENDSEND START,39,实验任务,任务1:用EDIT建立源程序,然后汇编、连接生成目标文件。任务2:在DEBUG下,将上述目标文件调入内存,利用U、D等命令,检查RAM区中的数据,合理使用D命令,分析所显示的信息并填写表21。,40,填写下面表2-1,(a)DATA1区数据 (b)DATA2 区数据,41,(C) STACK 区数据,42,任务3:利用U命令对.EXE文件进行反汇编, 分析反汇编清单,从第12条指令开始把每条指令的偏移地址填入表22的“指令的偏移地址”一栏中。任务4:利用T命令单步执行程序,从第12条指令开始每执行一条指令,填写表22中其它栏(“SRC寻址方式”、“SRC的地址”、及“AL之值”)。,43,表 2-2,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 中等教育 > 中学实验

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报