《微机系统与接口》微机原理实验3

《微机系统与接口》微机原理实验3

ID:43320370

大小:261.65 KB

页数:6页

时间:2019-09-30

上传者:U-7604
《微机系统与接口》微机原理实验3_第1页
《微机系统与接口》微机原理实验3_第2页
《微机系统与接口》微机原理实验3_第3页
《微机系统与接口》微机原理实验3_第4页
《微机系统与接口》微机原理实验3_第5页
资源描述:

《《微机系统与接口》微机原理实验3》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

暨南大学本科实验报告专用纸课程名称微机系统与接口实验丨实验项目名称数据转换或字符相互转换转换的程序设计实验项目编号80001308103实验项目类型验证实验地点科学馆3楼机房成绩评定学生姓名刘晓磊学号2008052225信息科学技术学院电子工程系通信工程专业实验时间2010年门月5日上午〜£L月工日上午温度_°C湿度—指导教师1>实验目的(1)学习ASCII十六进制数之间的区别于联系,学习它们之间的相互转换(2)熟悉在PC机上建立、汇编、链接、调试和运行8088汇编语言程序的过程。2、实验内容判断寄存器中的字串,若为ASCII码表中的十六进制数则将其转换为对应的ASCII并存入内存中;反之如果该字串为一个ASCII,则将其转换为对应的数字。 4、实验步骤(1)打开ultraedit编辑器。配置参数使其调用MASM环境(2)程序设计过程(关键步骤,详情请见流程图)a)研究十六个十六进制数的ASCII,判断方法以及它们之间的相互转换b)利用实验手册中提供的参考例程,通过自定义的码表,借助指定类型操作通过地址访问得到对应ASCIIc)研究十六个数字所对应的ASCII(字串)转换为所表示HEX字串公式(3)输入源代码(详见报告末页附录)(4)存盘后编译连接测试程序Microsoft(R.)MacroAssemblerVersion5.00Copyright(C)MicrosoftCorp1981-1985,1987.Allrightsreserved.50218+399078Bytessymbolspacefree0WarningErrors0SevereErrorsMicrosoft(R)8086ObjectLinkerVersion3.05Copyright(C)MicrosoftCorp1983z1984z1985.Allrightsreserved.结果显示此程序编译通过 暨南大学本科实验报告专用纸(附页)(4)调试程序以检测其是否可以实现所需功能①利用反汇编命令,查找程序结束地址"-uO""-u""一u”-〉…指导找到umovax,4c00v⑤改变AX中的数据为45H观察结果・DDS:0142B:00003E30313233343536-373839242B:00204600000000000000-000000111432:0039B8004CMOVAX,4C00111432:003CCD21INT21结果显示该程序结束的偏移地址为003C②执行程序前观察内存中的数据•DDS:0141B:0000CD20FF9F009AF0FEIDF04F03140E8A03141B:0010140E1703140E030E0304050002FFFFFF141B:0020FFFFFFFFFFFFFFFFFFFFFFFFCl134C01141B:0030D41214001800IB14FFFFFFFF00000000141B:004005000000000000000000000000000000141B:0050CD21CB00000000000000000000202020141B:006020202020202020200000000000202020141B:007020202020202020200000000000000000L.内存中没有存放程序要执行的数据可以实现将45H转换为E(见低位)的功能⑤改变AX中的数据为2观察结果-dds:0142B:00003230313233343536-373839142B:00104600000000000000-000000可以实现将3转换为32H的功能⑥改变AX中的数据为E观察结果CDZ1INI-dds:0142B:00004530313233343536-142B:00104600000000000000-142B:00200000000000000000-③利用程序地址范围连续执行可以实现将E转换为45H的功能-g=cs:0003cAX=4C00BX=0000CX=00AEDX=0000SP=0041BP=0000SI=0000DI=0000DS=142BES=141BSS=142DCS=1432IP=003CNVUPElPLNZNAPONC1432:003CCD21INT21显示最后的相乘结果④观察执行后内存中的数据142B:00000230313233343536-3738394142434445142B:00104600000000000000-0000000000000000142B:00200000000000000000-0000000000000000142B:00300000000000000000-0000000000000000-dds:0.0123456789ABCDE 可以实现将32H转换为2的功能 5、实验结论暨南大学本科实验报告专用纸(附页)笔者经过实际调试验证了所设计的十六进制数与ASCII码的相互转换代码的CMPAL,OFHJASITUATI0N2;ifitistheascii(mustbegreaterthanOFH),thenjustchangethemtoHEX正确性及有效性。编译通过,链接运行・exe文件后运行结果正确,符合设计要求6、实验小结通过此次实验,笔者进一步熟悉了在PC平台,通过UltraEdit编辑器调用MASMSITUATION!:;otherwise,changethemtoasciiMOVBX,AXMOVAH,BYTEPTRASCIITAB[BX]MOVRESULT,AHJMPOK环境编程时“建立、编译、链接以及调试”的步骤与方法;了解了利用assembly实现十六进制数与ASCII码的相互转换的思想;理解了不同码制转换的微观变化;加深了对于微机原理理论课程的理解;进一步提高了编程实战能力,为以后的研究打下了坚实的基础。附录:;Platfonn:windows7_x86,emu8086_4.08;Author:LiuXiaolei(刘晓磊)2008052225;Goal:theexchangeofASCIIStringandHexdefinedinthetabDATASEGMENTRESULTDB0ASCIITABDBn0123456789ABCDEF";definetheASCIItabDATAENDSSTACKSEGMENTSTACKSTADB64DUP(O)STACK_TOPDB0STACKENDSCODESEGMENTSITUATION2:CMPAX,9JALETTERCHANGESUBAX,OMOVRESULT,ALJMPOKLETTERCHANGE:SUBAX,'A'-'O'-IOMOVRESULT,ALJMPOKOK:MOVAX,4C00HINT21H;theendCODEENDSENDSTARTASSUMECSrCODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXLEASP,STACK.TOP;setthetopofthestackMOVAX,4511

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭