好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

微机原理实验报告.doc

65页
  • 卖家[上传人]:大米
  • 文档编号:397630840
  • 上传时间:2023-05-06
  • 文档格式:DOC
  • 文档大小:1.88MB
  • / 65 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 微机原理实验报告 目录微机原理实验报告 1目录 2第一部 32位微机原理实验 4实验一 显示程序实验 4一、实验步骤 4二、实验程序 5三、实验结果 5实验二 数据传送实验 6一、实验步骤 6二、实验程序 6三、实验结果 7实验三 数码转换程序实验 8一、将ASCII码表示的十进制数转换为二进制数 8二、将十进制数的ASCII码转化为BCD码 12三、将十六进制数的ASCII码转化为十进制数 19四、BCD码转换为二进制码 23实验四 运算类程序实验 26一、实验思路 26二、实验程序 28三、实验结果 29实验五 分支程序设计实验 30一、实验步骤 30二、实验程序 33三、实验结果 34实验六 循环程序设计实验 35一、实验步骤 35二、实验程序 37三、实验结果 38汇编语言部分实验总结 39第二部分32位微机接口技术实验 40实验一 8259中断控制器应用实验 40一、实验内容 40二、实验步骤 40三、实验思考题及所填空缺的数据的分析 47四、实验结果 48实验二 8255并口控制器应用实验 49一、实验内容 49二,实验步骤 50三、实验思考题及所填空缺的数据的分析 53四、实验结果 54实验三 8254定时/计数器应用实验 56一、实验内容 56二、实验步骤 56三、实验思考题及所填空缺的数据的分析 60四、实验结果 62接口部分实验总结 63第一部 32位微机原理实验实验一 显示程序实验一、 实验步骤1. 运行Tddebug软件,选择Edit菜单,根据实验内容的描述编写实验程序,本实验显示部分参考实验流程如图1-1示; 2. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接; 3. 使用Rmrun菜单中的Run,运行程序,观察运行结果; 4. 使用Rmrun菜单中的Debug,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容; 5. 更改数据区中的数据,考察程序的正确性。

      二、 实验程序 实验程序如下: DATA SEGMENT MES DB 'Show a as hex:', 0AH,0DH,'$' SD DB 'a' DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV DX, OFFSET MES ;显示提示信息 MOV AH, 09H INT 21H MOV DI, OFFSET SD MOV AL, DS:[DI] AND AL, 0F0H ;取高4位 SHR AL,4 CMP AL, 0AH ;是否是A以上的数 JB C2 ADD AL, 07H C2: ADD AL, 30H MOV DL, AL ;显示字符 MOV AH, 02H INT 21H MOV AL, DS:[DI] AND AL, 0FH ;取低4位 CMP AL, 0AH JB C3 ADD AL, 07H C3: ADD AL, 30H MOV DL, AL ;显示字符 MOV AH, 02H INT 21H MOV AX, 4C00H ;返回DOS INT 21H CODE ENDS END START三、实验结果程序运行结果为:本程序既是把字符“a”转化为其ASCII码并以10进制数的形式显示在屏幕上。

      实验二 数据传送实验一、实验步骤1. 运行Tddebug软件,选择Edit菜单; 2. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接; 3. 使用Rmrun菜单中的Run,运行程序,观察运行结果; 4. 使用Rmrun菜单中的Debug,调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容; 5. 更改数据区中的数据,考察程序的正确性二、实验程序 DDATA SEGMENT ;定义源数据段 MSR DB "HELLO,WORLD!$" LEN EQU $- MSR DDATA ENDS EXDA SEGMENT ;定义附加数据段 MSD DB LEN DUP(?) EXDA ENDS MYSTACK SEGMENT STACK ;定义堆栈段 DW 20 DUP(?) MYSTACK ENDS CODE SEGMENT ;定义代码段 ASSUME CS:CODE, DS:DDATA, ES:EXDA START: MOV AX, DDATA MOV DS, AX ;装载数据段寄存器 MOV AX, EXDA MOV ES,AX ;装载附加数据段寄存器 MOV SI, OFFSET MSR ;设置SI MOV DI, OFFSET MSD ;设置DI MOV CX, LEN NEXT: MOV AL, [SI] ;开始传输数据 MOV ES:[DI], AL INC SI INC DI DEC CX JNZ NEXT PUSH ES POP DS ;将附加段寄存器的段值赋给数据段寄存器 MOV DX, OFFSET MSD MOV AH, 9 INT 21H MOV AX, 4C00H ;利用DOS功能调用返回DOS状态 INT 21H CODE ENDS END START三、实验结果程序运行结果为:本程序将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。

      实验三 数码转换程序实验一、将ASCII码表示的十进制数转换为二进制数(1)实验思路十进制数可以表示为:Dn×10n+Dn-1×10n-1+…+D0×100 =Di×10i 其中Di代表十进制数1、2、3…9、0 上式可以转换为: ΣDi×10i=((…(Dn×10+Dn-1)×10)+Dn-2)×10+…+D1)×10+D0 由上式可归纳十进制数转换为二进制的方法:从十进制数的最高位Dn开始作乘10加次位的操作,依次类推,则可求出二进制数结果根据上面的原理,采取十进制数外部输入的方式储存在缓冲区中,调用缓冲区中的储存数将之转化为二进制数显示在屏幕上,转换过程的流程图下图所示CALL INPUT显示输入提示,等待从键盘输入十进制数字符串,并将之储存在内存中CALL DISPP回车换行CALL CHANGE将数据串转化为相应的数值存放在BX中CALL LIST_BX将BX中的内容以二进制的形式显示在屏幕上返回DOS显示的二进制位数为CX=16将BX左移一位将BX的最低位值赋给DL将DL中的数值转化为其ASCII码将DL中的ASCII码送往屏幕显示RET返回LIST_BX子程序流程图 (2)实验程序 DATA SEGMENT STRING DB 'Input:','$' NUM DB 6,?,6 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX CALL INPUT ;调用显示输入子程 CALL DISPP ;回车换行 CALL CHANGE ;调用将输入字符串转化为相应的十进制数值子程 CALL LIST_BX 。

      点击阅读更多内容
      相关文档
      云南省红河州河口县语文二年级下学期期末试题+2020-2021学年.pdf 八年级生物开学摸底考(人教版)(答题卡).pdf 云南省文山州砚山县数学四年级下学期期末试题 2020-2021学年 (2).pdf 八年级生物开学摸底考(辽宁专用)(答题卡).pdf 八年级生物开学摸底考(海南专用)(答题卡).pdf 云南省昆明市五华区数学四年级第二学期期末考试 2020-2021学年.pdf 八年级生物开学摸底考(南京专用)(答题卡).pdf 八年级生物开学摸底考(湖南专用)(答题卡).pdf 云南省德宏州语文五年级下学期期末试题 2020-2021学年答案zq.pdf 八年级生物开学摸底考(武汉专用)(答题卡).pdf 2022年盐城市中考化学试卷答案.pdf 云南省德宏州语文四年级下学期期末试题 2020-2021学年.pdf 云南省德宏州数学四年级下学期期末试题 2020-2021学年.pdf 云南省德宏州数学五年级下学期期末试题 2020-2021学年数学答案zq.pdf 八年级生物开学摸底考(福建专用)(答题卡).pdf 八年级生物开学摸底考(全国通用)(答题卡).pdf 八年级生物开学摸底考(广西专用)(答题卡).pdf 八年级生物开学摸底考(广州专用)(答题卡).pdf 云南省昆明市盘龙区数学四年级第二学期期末考试 2020-2021学年.pdf 云南省昆明市盘龙区语文二年级第二学期期末考试 2020-2021学年(人教部编版无答案PDF).pdf
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.