文档详情

微机原理及汇编语言程序设计实验指导书.doc

发布:2016-03-24约1.01万字共16页下载文档
文本预览下载声明
微机原理及汇编语言 程序设计 实 验 指 导 书 计算机实验中心 目 录 实验一 DEBUG的使用………………………………………3 实验二 数制转换程序……………………………………8 实验三 数组排序程序……………………………………10 实验四 数据的输入与输出程序…………………………11 实验五 子程序设计………………………………………12 实验六 宏调用程序设计…………………………………14 实验一 DEBUG的使用 【实验目的】 1.学习使用DEBUG调试程序的各种命令。 2.掌握8088/8086指令系统---数据传送指令、算术指令。 3.掌握用DEBUG调试程序的方法。 4.掌握8088/8086 CPU寄存器的用途和存储器组织及它们之间的关系。 5.掌握内存操作数及寻址方法。 6.掌握汇编语言伪操作:BYTE PTR,WORD PTR。 7.熟悉在PC机上建立、汇编、连接、调试和运行汇编语言程序的过程。 8.掌握数据传送、算术运算、BCD码调整和循环指令的用法,掌握字符显示的方法。 【实验性质】 验证性实验(学时数:2H) 【实验内容】 一、DEBUG 命令的使用 1.敲 DEBUG 进入 DEBUG 环境,显示提示符 _ 。 2.用命令 D100 10F 观察内存中的16进制码及屏幕右边的ASCII字符。 3.用命令 E100 30 31 32 …… 3F 将30H~3FH写入地址为100H开始的内存单元 中,再用D命令观察结果,看键入的16进制数是什么字符的ASCII码? 4.用命令 F100 L0F A 将A的ASCII码填入内存,用D命令查看结果。 5.用命令 F110 11F 41 将41H 填入内存,用D命令观察结果并比较。 6.用R 命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF 的内容。 7.用R命令将AX,BX内容改写为1234H及5678H。 8.用H命令检查下列各组16进制数加减结果并和你的手算结果比较: (1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758,347FH 二、8088/8086常用指令练习 1.传送指令 1)用A命令在内存100H处键入下列内容: MOV AX,1234 MOV BX,5678 XCHG AX,BX MOV AH,34 MOV AL,56 MOV CX,75AB XCHG AX,CX 2)用U命令检查键入的程序,特别注意左边的机器码。 3)用T命令逐条运行这些指令,每运行一行检查并记录有关寄存器及IP的变化情况。并注意标志位有无变化。 2.加减法指令: 1)用A命令在内存200H处键入下列内容: MOV AH,34 MOV AL,2E ADD AL,AH SUB AL,78 MOV CX,1234 MOV DX,5678 ADD CX,DX SUB CX,AX SUB CX,CX 2)用U命令检查键入的程序及对应的机器码。 3)用T命令逐条运行这些指令,检查并记录有关寄存器及ZF情况。 思考题: 这次运行还是打入T,行不行?如何单步运行上述小程序?用R命令检查一下IP的内容。注意T命令与IP的关系。 3.带进位加减法: 1)用A命令在内存300H处键入下列内容,并用U命令检查: MOV AH,12 MOV AL,89 MOV CH,56 MOV CL,98 ADD AL,CL ADC AH,CH MOV DH,A7 MOV DL,58 SUB DL,7F SBB DH,34 2)用T命令逐条运行这些指令,检查并记录有关寄存器及CF内容。 3)上面这段程序若改用16位操作指令达到同样结果,怎么改?试修改并运行之。 4.BCD码加减法 1)内容: MOV AL,58 ADD AL,25 DAA 2)要求:用A 命令键入,U命令检查,T命令逐条运行并记录有关寄存器及AF内容。 三、内存操作数及各种寻址方式使用: 1)用A命令在内存400H处键入下列内容,并用U命令检查: MOV AX,1234 MOV [1000],AX MOV BX,1002 MOV BYTE PTR[BX],20 MOV DL,39 INC BX MOV [BX],DL DEC DL MOV SI,3 MOV [BX+SI],DL MOV [BX+SI+1],DL MOV WORD PTR[BX+SI+2],2846 2)用T命令逐条运行这些指令,每运行一条有关内存操作数的指令,要用D命令检查并记录有关内存单元的内容并注明是什么寻址方式。 注意:D命令显示结果中右边的ASCII字符及双字节数存放法。 思考题: 有关指令中BYTE PTR及WORD
显示全部
相似文档