计算机实现原理专题自动化(总结)

编程

1、逻辑门是构成该计算机的最基础的组件,通过门电路可以构建加法器、触发器、计数器、锁存器、RAM随机访问存储器、累加器等元件;

2、通过控制面板作为输入设备,灯泡作为输出设备、配合加法器和求补器就已经可以实现两位数的加法和减法运算了;

3、如果要进行连续N个数的加减法运算可以在加减法器的基础上放置一个锁存器,这样从第3个数开始可以复用前面的临时结果;

4、对连续N个数的加减法运算作进一步优化,如果在相加减的过程中,不小心输错了一个数,那么所有的工作都需要重新来一遍,为了解决该问题可将这N个数字预先输入到存储器中,然后通过计数器依次遍历存储器地址从而读取相应的数值并加载到累加器中。这样即使中间有数字输错,在计数器执行前可通过随机存储器进行修改;

5、第4步进行的优化存在一个问题:计数器何时能够停止?如果没有明确的指令,它会一直计数下去,当达到最大值后又从0开始计数。由此引入了一个“停止”指令,可以假设第N+1个数对应着该指令。指令也是个二进制数,现在必须将指令与实际数值进行区分。一个容易想到的方法是将每个步骤都抽象成“指令+数值”的方式,对于第一个数值就是将其直接加载到累加器的锁存器中,从第二个数值开始就是将数值相加到累加器中,然后将最终的结果写回RAM中,最后一个操作就是“停止”指令(该指令没有操作数)。这些指令要通过相应的控制电路才能实现(由于书中没有详细介绍,因此略过。尽管如此由于每个组件都有相应的输入输出端,控制器可以控制每个组件的输入端来实现相应的功能,例如:第一个加载指令可以控制锁存器前的8个2-1选择器使得锁存器只能从RAM中加载数据,其它的指令可自行脑补);

6、为了实现更高位数的加减法运算,可将数值按照8位进行截取,从低位到高位依次进行加减法运算。通过这种方法可对任意位宽的数值进行加减法运算,但由于这种方式会导致最终得出的结果不在连续的存储位置上从而在取结果时需要程序计数器跳到指定的位置上读取数值,这样会降低效率。因此通过对计算的数值和存储的结果预先分配一段连续的存储空间,然后将指令后面对应数值存储的地址从而解决了数据空间不连续的问题;

7、在此基础上,我们提出了更高的要求:我们需要新增乘除法甚至是开方、三角函数等运算或者复用之前计算的结果,从而引入跳转指令。有了该指令在真正意义上才建立了一台计算机。

这些就是计算机的基本实现原理,尽管离真正实用还有一段距离,下一章准备介绍经典的商用处理器的具体实现。

 

以上是 计算机实现原理专题自动化(总结) 的全部内容, 来源链接: utcz.com/z/513225.html

回到顶部