复杂模型机的设计
补码一位乘是计算机组成原理的知识,复杂模型机是我们学校的一个课设题目,今天拿出来给自己总结总结大学三年的“成果”,如果可以对读者有一定的启示我也会是很高兴的。
前景知识:
补码一位乘:
(1)当Y为正:
(2)当Y为负:
这个其实比较简单,主要是搞清楚模型机的指令系统的格式以及含义,然后按照补码一位乘的原理进行指令的编写即可。
在编写的过程中我主要考虑了这么几个问题:
(1)寄存器的个数少,如何设计使其支撑数据间的转换
(2)如何判断乘数的末位数字为1
(3)如何对部分积进行正确的右移
(4)由于指令中关于加减法以及移位的操作与进位有关,所以对于进位位CY应该如何控制使其成为程序所需要的
(5)如何判断循环次数
最后的结果图如下:
25H X 1BH = 0F9CH
做几个说明吧:
ALU是加法元件
RAM是内存单元
R0、R1、R2是3个普通的寄存器
PC是指令寄存器,用来存放下一条指令的地址
INPUT是输入的数据
OUTPUT是输出的数据
作为过来人,真的!计算机组成原理还是很重要的!!!