复杂模型机实验报告(共9页).doc

上传人:飞****2 文档编号:13491199 上传时间:2022-04-29 格式:DOC 页数:9 大小:95.50KB
返回 下载 相关 举报
复杂模型机实验报告(共9页).doc_第1页
第1页 / 共9页
复杂模型机实验报告(共9页).doc_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《复杂模型机实验报告(共9页).doc》由会员分享,可在线阅读,更多相关《复杂模型机实验报告(共9页).doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上评语:课中检查完成的题号及题数: 课后完成的题号与题数:成绩:自评分:92实验报告实验名称:基于复杂模型机两个8位二进制数乘法的实现日期:2012/1/9班级:学号:姓名:班级:学号:姓名:一、实验目的:1.综合运用所学计算机组成原理知识,设计并实现较为完整的计算机2.锻炼动手能力,实践排错能力3.进一步理解计算机运行的原理以及微指令架构二、实验内容:1.根据实验指导书提供的复杂模型机电路图连接电路,并校验电路2.装载示例程序并运行,分析理解所增加的微指令3.根据复杂模型机现有条件设计两个8位二进制相乘的程序 三、项目要求及分析:实验内容1、2按照实验指导书进行,略。

2、实验内容3分析:要求利用复杂模型机现有的指令系统以及硬件电路设计一段实现八位二进制数相乘的程序。因为乘法在计算机中有多种算法实现,包括整数乘、小数乘、原码乘、补码乘等等,因为此次实验并不要求给出一个完整的实用乘法程序段,故实验程序只实现两个八位二进制整数无符号相乘运算。采用算法如下:乘数 AA7A6A5A4A3A2A1A0 被乘数 B乘积 C = BA0 +2(BA1+2(BA2+ 2BA7)其中Ai为0或者1,在机器中使用原码表示2*X是使X左移1位。若不采用循环模式而是直接使用指令将该算法的乘积等式直接表示出来,需要A,B,RL(结果低位),RH(结果高位)四个通用寄存器;而若使用循环模式

3、,则需要除A、B、RL、RH外的CX(控制循环次数以及高低位相与寄存器)和AD(取中间结果高低位)的辅助。此次实验为了充分的接触指令系统,采用循环模式。由于复杂模型机中只有R0、R1、R2、R3四个通用寄存器,故一些原来计划使用的寄存器改为使用主存。另外,因为低位结果相加可能进位,所以修改原微指令ADD为带进位加法。四、具体实现: 1. 画出算法流程图说明:该流程图使用了以下6个寄存器CX, AD,A,B,RL,RH;其中CX作为计数以及辅助生成AD的,CX变化为1000 0000初始值0000 00010000 00101000 0000程序结束AD作为被乘数的高低位划分数据, 其中被乘数B

4、中高位对应的AD的位置1,低位置0:0000 0000初始值0000 0001CX OR AD - AD0000 00111111 1111另流程图中所用6个寄存器在实现中使用MEM代替,CX,AD,A,B使用R2作RL,R3作RH。左移1位等价右移7位2. 根据算法实现,若需修改指令系统,画出修改后的微程序流程图需修改一条微指令即A+B-RD修改为进位加法,因流程图大体不变所以微程序流程图略3编写微程序两个8位二进制数的乘法运算程序如下:;机器指令$P 00 20;INPUT TO R0$P 01 00$P 02 22;INPUT TO R2$P 03 00$P 04 61;SET R1 T

5、O 00$P 05 00$P 06 63;SET R3 TO 00$P 07 00$P 08 63;SET R3 TO F8$P 09 F8$P 0A D3;STORE R3 TO 80 AS A TAG$P 0B 80;循环主体$P 0C 63;SET R3 TO 01$P 0D 01$P 0E 1B;AND R2,R3$P 0F F0;BZC TO 12$P 10 12$P 11 01;ADD R0,R1$P 12 63;SET R3 TO 01$P 13 01$P 14 AD;RR R3,R1$P 15 AE;RR R3,R2$P 16 63;SET R3 TO 7F$P 17 7F$P

6、 18 1E;AND R3,R2$P 19 63;SET R3 TO 80$P 1A 80$P 1B 17;AND R1,R3$P 1C 9E;OR R3,R2$P 1D 63;SET R3 TO 01$P 1E 01$P 1F AF;RR R3,R3 JUST TO MAKE FZ NOT EQUAL ONE THEN BZC DEPENDS ON FC$P 20 F0;BZC TO 40$P 21 40$P 22 63;SET R3 TO 7F$P 23 7F$P 24 1D;AND R3,R1 TO MAKE THE HB OF R1 AS 0$P 25 63;SET R3 TO 01$

7、P 26 01$P 27 AF;RR R3,R3 JUST TO .$P 28 C3;LAD 80 TO R3$P 29 80$P 2A 73;R3+$P 2B F0;BZC TO THE END WHICH IS 90$P 2C 90$P 2D D3;STA R3 TO 80$P 2E 80$P 2F E0;JMP TO THE ENTRANCE OF THE CYCLE$P 30 0C;条件转移指令分支$P 40 63;SET R3 TO 80$P 41 80$P 42 9D;OR R3,R1 TO MAKE THE HB OF R1 AS 1$P 43 E0;JMP TO 25$P 44

8、 25;程序结尾$P 90 34;OUTPUT R1$P 91 40$P 92 38;OUTPUT R2$P 93 40$P 94 50;STOP;微指令; /* Start Of MicroController Data */$M 00 ; NOP$M 01 006D43 ; PC-AR, PC加1$M 03 ; MEM-IR, P$M 04 ; RS-B$M 05 04B201 ; A加B-RD$M 06 ; RS-B$M 07 ; A与B-RD$M 08 ; MEM-AR$M 09 ; IO-RD$M 0A ; MEM-AR$M 0B ; NOP$M 0C ; MEM-RD$M 0D ;

9、 RD-MEM$M 0E ; A-PC$M 0F 0000CB ; NOP, P$M 10 ; RS-IO$M 11 ; MEM-RD$M 12 06B201 ; A加1-RD$M 13 ; RS-B$M 14 05B201 ; A减B-RD$M 15 ; RS-B$M 16 01B201 ; A或B-RD$M 17 ; RS-B$M 18 ; A右环移-RD$M 1B ; A-PC$M 1C 10101D ; MEM-A$M 1D 10608C ; MEM-AR, P$M 1E 10601F ; MEM-AR$M 1F ; MEM-A$M 20 10608C ; MEM-AR, P$M 28

10、 ; MEM-A$M 29 00282A ; RI-B$M 2A 04E22B ; A加B-AR$M 2B 04928C ; A加B-A, P$M 2C 10102D ; MEM-A$M 2D 002C2E ; PC-B$M 2E 04E22F ; A加B-AR$M 2F 04928C ; A加B-A, P$M 30 ; RD-A$M 31 ; RD-A$M 32 006D48 ; PC-AR, PC加1$M 33 006D4A ; PC-AR, PC加1$M 34 ; RS-RD$M 35 ; NOP$M 36 006D51 ; PC-AR, PC加1$M 37 ; RD-A$M 38 ;

11、RD-A$M 39 ; RD-A$M 3A ; RD-A$M 3B ; NOP$M 3C 006D5C ; PC-AR, PC加1$M 3D 006D5E ; PC-AR, PC加1$M 3E 006D68 ; PC-AR, PC加1$M 3F 006D6C ; PC-AR, PC加1; /* End Of MicroController Data */4. 编写机器指令验证;机器指令$P 00 20;INPUT TO R0$P 01 00$P 02 22;INPUT TO R2$P 03 00$P 04 61;SET R1 TO 00$P 05 00$P 06 63;SET R3 TO 00

12、$P 07 00$P 08 63;SET R3 TO F8$P 09 F8$P 0A D3;STORE R3 TO 80 AS A TAG$P 0B 80;循环主体$P 0C 63;SET R3 TO 01$P 0D 01$P 0E 1B;AND R2,R3$P 0F F0;BZC TO 12$P 10 12$P 11 01;ADD R0,R1$P 12 63;SET R3 TO 01$P 13 01$P 14 AD;RR R3,R1$P 15 AE;RR R3,R2$P 16 63;SET R3 TO 7F$P 17 7F$P 18 1E;AND R3,R2$P 19 63;SET R3 T

13、O 80$P 1A 80$P 1B 17;AND R1,R3$P 1C 9E;OR R3,R2$P 1D 63;SET R3 TO 01$P 1E 01$P 1F AF;RR R3,R3 JUST TO MAKE FZ NOT EQUAL ONE THEN BZC DEPENDS ON FC$P 20 F0;BZC TO 40$P 21 40$P 22 63;SET R3 TO 7F$P 23 7F$P 24 1D;AND R3,R1 TO MAKE THE HB OF R1 AS 0$P 25 63;SET R3 TO 01$P 26 01$P 27 AF;RR R3,R3 JUST TO

14、.$P 28 C3;LAD 80 TO R3$P 29 80$P 2A 73;R3+$P 2B F0;BZC TO THE END WHICH IS 90$P 2C 90$P 2D D3;STA R3 TO 80$P 2E 80$P 2F E0;JMP TO THE ENTRANCE OF THE CYCLE$P 30 0C;条件转移指令分支$P 40 63;SET R3 TO 80$P 41 80$P 42 9D;OR R3,R1 TO MAKE THE HB OF R1 AS 1$P 43 E0;JMP TO 25$P 44 25;程序结尾$P 90 34;OUTPUT R1$P 91 4

15、0$P 92 38;OUTPUT R2$P 93 40$P 94 50;STOP联机装入调试五、调试运行结果: 六、所遇问题及解决方法: 在编写机器指令之前,不了解新增加的微指令系统的各个功能会怎样影响FC,FZ位,尤其是循环右移RR以及与AND功能。导致不能直接使用BZC跳转命令,于是首先连线,并编写了几条简单的命令对功能进行验证,解决问题。 七、实验总结:1.经过实验,深层次的了解了微指令系统以及它存在的意义。并且通过自我拓展,了解到了现在计算机底层所流行的技术以及有哪些公司正在做底层芯片,有哪些架构等等。体会到了机器语言的速度之快以及变成之繁琐。贯通了从电路到桌面应用这一系列体系知识。2.3. 专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁