图1— 11程序运行
图1—12程序运行
本实验的操作数为X=01H,Y=02H,其中X的直接地址为A=0AH,Y的直接地址为C=0CH,间接地址为B=0BH,X和Y进行逻辑或运算的结果为03H,然后该结果减1,得到最终结果为02H,因此,最后
第- 13 -页
输出单元输出的结果为02H.
第一条机器指令MOV将间接地址为0BH的内存单元的内容(Y)移入寄存器R0 ,该指令执行之后, R0 中的内容为02H.
第二条机器指令OR将直接地址为0AH的内存单元的内容(X)与寄存器R0中的内容执行逻辑或运算,结果存入寄存器R0 .该指令执行之后, R0 中的内容为03H(X+Y的结果).
第三条机器指令DEC将寄存器R0中的内容自减1,结果仍存入R0 .该指令执行之后, R0 中的内容为02H.
第四条机器指令OUT输出寄存器R0中的内容到LED 第五条机器指令。。。。。 。。。。。
第- 14 -页
五、 设计体会与小结
在接触这门课之前自己只会用电脑,不知道它的工作原理。一直不知道计算机是怎么运用大规模集成电路进行工作的,也不清楚计算机是怎么通过加减与或等基本操作来组织起了大规模,高复杂度的程序的。
经过一周时间的实验学习,我对计算机的内部工作原理有了新的认识,这次试验,虽然不能说把所有实验内容都弄懂,但自己已经对计算了的工作原理有了新的了解,对计算机组成原理这门课以及它的作用有了更深一步的认识。
本次实验经历了两个过程。首先,是连接电路。其次,装载课程设计指导书上设计的程序并运行,通过观察运行情况和数据在总线上的流动,了解各功能部件的工作原理和工作机。连接电路在前面的实验中已经很熟悉了,所以没什么困难,真正的困难来自程序的运行,由于电路复杂,而且前面做的微指令实验不是很成功,所以自己也有心理压力。不过经过一个小组的够共同努力,再加上别的好同学的帮助我们也最终完成了本次试验。通过这次的课程设计,我明白了机器指令和微指令之间的关系,机器指令为微指令提供入口以及操作数或操作数的地址,微指令具体实现机器指令所指定的功能。
六、 参考文献
《计算机组成与结构》 清华大学出版社 王爱英主编 《计算机组成原理实验指导书》 百度:www.http://www.wodefanwen.com/
道客巴巴:www.doc88.com 豆丁网:www.docin.com
第- 15 -页
七、 附录(核心代码)
表1—5、二进制代码表
微地址 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 2 0 21 22 23 24 25 26 27 30 S3 S2 S1 S0 M CN WE A9 A8 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 0 1 A 000 110 100 110 011 010 001 110 001 110 110 110 110 000 110 010 110 110 010 000 010 000 101 000 000 B 000 110 000 000 000 001 101 000 000 110 110 110 110 001 000 000 110 110 000 000 000 101 000 101 101 C 100 110 001 000 000 000 000 000 000 110 110 110 110 000 000 000 110 110 000 000 000 000 110 000 000 μA5?μA0 010000 000010 001000 000100 000101 000110 000001 001101 000001 000011 000111 001110 010110 000001 001111 010101 010010 010100 010111 000001 011000 000001 000001 010000 010001
第- 16 -页
联机读写程序代码: 机器指令: $P0000 $P0110 $P020A $P0320 $P040B $P0530 $P060B $P0740 $P0800 $P0A01 微指令:
$ M00108101 $ M0182ED01 $ M0248C000 $ M0304E000 $ M0505B000 $ M0506A201 $ M06019A95 $ M070DE000 $ M08011000 $ M0983ED01 $ M0A87ED01 $ M0B8EED01 $ M0C96ED01 $ M0D018202 $ M0E0FE000 $ M0F15A000 $ M1092ED01 $ M1194ED01 $ M1217A000 $ M13018001 $ M14182000 $ M15010A07 $ M1681D100 $ M17100A07 $ M18118A06
第- 17 -页