资源描述:
《vip微机原理实验指导书_机械、信管》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验系统认识与数码转换实验一、实验目的1・学习汇编语言的开发过程。2.熟练掌握DEBUG调试程序。参考书后附录E二、实验设备PC机一台三、实验内容及步!1.系统认识实验在内存缓冲区BUFF中存储0-F共16个字节数据,买验参考程厅;如下:DATASEGMENTBUFFDB16DUP(?);定义数据段DATAENDSCODESEGMENT;定义代码段ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDT,OFFSETBUFFMOVCX,16MOVAL,0Al:MOV[DI],ALINCDTINCALLOOPAlMOVAH,
2、4CHTNT21HCODEENDSENDSTART;设置缓冲区首址:字节数送入CX中写入一字节修改地址指针修改数据未填完循环;代码段结束;程序结束实验步骤:(1)把实验用的相关软件拷贝到PC机中,比如D盘的HLIBIAN文件夹(D:HUIBIAN)o(2)进入DOS环境(开始程序附件'C:命令提示符'),进入路径D:HUIBIANo(3)编辑,启动编辑软件EDIT,输入源程序,检查无误后存盘,如文件名ll.ASMo(4)汇编,即键入MASM11.ASM回车,通过后应生成文件11.OBJ«(5)连接,即键入LINK11.OBJ回车,通过后应生成文件ll.E
3、XEo(6)调试,即键入DEBUG11.EXE,进入调试软件DEBUG来调试源程序。DEBUG的用法可参考教材的附录E。(7)运行程序,观察结果是否正确。1.数码转换实验将十进制数的ASCI【码转换为BCD码。设五位十进制数的ASCII码己存放在内存缓冲区BUF1中,转换为BCD码后,再分别存入内存缓冲区BUF2中。提示:一字节ASCII码取其低四位即变为BCD码O实验程序如下:DATASEGMENTBl'FlDB31H,32H,33H,34H,35H;定义数据段BIF2DB5DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DAT
4、ASTART:MOVAX,DATAMOVDS,AXMOVCX,5;循环计数器赋初值MOVSI,OFFSETBUF1;ASCII码首址MOVDI,OFFSETBUF2;BCD码首址Al:MOVAL,[SI];送ASCII码至ALCMPAL,3AH;比较AL与3AJAEA2;大于3A则转A2SUBAL,30H;小于3A则取ASCII码低4位JBA2;小于30则转A2MOV[DI],AL;保存结果A2:INCSIINCDILOOPAlMOVAH,4CHINT21HCODEENDSENDSTART实验步骤(1)输入源程序,进行汇编、连接。(2)进入DEBUG运行程序,观察结
5、果是否正确。(3)反复试几组数,并运行程序,观察结果。实验二顺序程序设计一、实验目的1.进一步熟悉汇编语言的开发过程。2.掌握顺序程序的设计方法。二、实验设备PC机一台三、实验内容及步!1.二进制双精度加法运算DATASEGMENTXLDW65A0HXHDW0015HYLDW0B79EHYHDW0021HZLDW?•ZHDW?■DATAENDSCODESEGMENT计算X+Y二Z,实验程序如下:请在此处给X低位赋值;请在此处给X高位赋值;请在此处给Y低位赋值:请在此处给Y高位赋值ASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,A
6、XMOVAX,XL;X低位送AXADDAX,YL;X低位加Y低位MOVZL,AX:存低位和MOVAX,XH;X高位送AXADCAX,YH:X高位加Y高位MOVZH,AXMOVAH,4CH1NT21HCODEENDSENDSTART本实验程序是双粕度(2个16位,即32位)运算,利用累加器AX,先求低十六位和,并存入低址存储单元,示求高16位和,再存入高址存储单元。由于低位和可能向高位有进位,因而高位字相加语句需用ADC指令,则低位和加有进位时,CF二1,高位字相加时,同时加上CF中的]。实验步骤(1)输入源程序,进行汇编、连接。(2)进入DEBUG运行程序,观察结果
7、是否正确。(3)修改源程序,反复试几组数,运行程序观察结果。2.将一字节压缩BCD码转换为两个ASCII码实验参考程序如卜•:DATASEGMENTBCDBUFDB96HASCBUFDB2DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAL,BCDBUF将BCD码存放到AL和MOVBL,ALMOVCL,4SHRBL,CL右移4位,高4位移到低4位ADDBL,30H得到高位的ASCII码MOVASCBUF,BLANDAL,OFH清高4位ADDAL,30H得到低位的AS