第49章 造一个CPU(1/2)
49.
“的确,这个逻辑灵路,执行的只是逻辑操作,而没有思考的过程。”算老赞同道。
“好了,我们现在,已经设计好了第一个硬件指令,这还不够,如果要完成更复杂的运算,还需要更多的硬件指令。”
程理继续设计新的逻辑灵路。
“这是一个用来执行停止命令的逻辑灵路,只要对这个逻辑灵路输入11111111,就可以让加法器停止运算。”
“11111111转换成16进制就是ff,换成卦文就是‘天天’。”
这样又多了一条操作码了。
“此外还要有这些硬件指令,进行复位清零、保存数据、转移数据、执行减法……”
随着程理忙碌的设计出一个有一个逻辑灵路,一条又一条操作码被程理编辑出来。
最终,有7条操作码被程理罗列出来。
“‘艮坤’代码,执行取出数据功能。”
“‘艮艮’代码,保存数据。”
“‘坎坤’代码,执行加法。”
“‘坎艮’代码,执行减法。”
“‘坎坎’代码,执行加法进位。”
“‘坎巽’代码,执行减法借位。”
“‘天天’代码,停止运算。”
程理长吁了一口气道。
“好了,有这7条操作码,基本满足基础运算的功能了。”
程理抹了抹额头的汗珠,一副气喘吁吁的样子。
算老则完全不体贴的说道:“只有这7条吗?”
底层灵石上的阴阳爻口,实际上就是已经编辑好的操作码,而青灵岛上目前已经发现的阴阳爻口数量有109个。
而程理现在只弄出7条操作码,所以算老才会觉得少。
“够了够了,我们现在只是要制造算器,而不是直接去优化灵甲,有这7条操作码,想要计算多少位数据都没问题。
“剩下的,等把底层灵石破解了,直接将灵甲核心秘纹集,拿过来用吧。”程理摆了摆手说道。
“不然,继续编写操作码,就需要设计指令集……就是你们说的核心秘纹集了,这已经超出我能力范围之外。如果给我足够长的时间琢磨的话,也许还能弄出来,但就8天的时间,肯定是来不及弄的。所以这时候最好还是用现成的。”
程理心里腹诽道:“我只是一个程序员,又不是硬件架构师,更不是cpu的指令集,就是所有操作码的集合,也就是硬件指令集。
有了指令集,就能对硬件进行编码,告诉计算机做各种各样的事情。
所以,指令集相当于人和计算机进行直接交流的“机器语言”。
有了机器语言,才能发展出汇编语言。
有了汇编语言,才能发展出高级语言。
所以,cpu指令集,是最底层的程序,也是最核心的程序。
这样核心的东西,自然不是短短几天,程理就能以一己之力编出来的。
“也是,所以还是要等破解了底层灵石后,用传承下来的灵甲核心秘纹集才行。”算老点头道。
青灵岛上的灵甲核心秘纹集,实际上就是一套完整的指令集。
所以,现在时间紧迫,既然有现成的指令集,程理也没必要费力不讨好自己去重新设计一套新的。
他现在要做的,只是做一个可以进行自动运算,且计算能力足够的计算器出来,用来破解底层灵石,只要把底层灵石破解了,获得了灵甲核心秘纹集,后面的事情就不需要程理操心了。
所以,有那7条操作码,也就足够了。
“现在,我们把这些逻辑灵路和寄存器相连接,然后把这些操作码写入到寄存器里。”
“如此一来,我们现在制造好的2个64k_ram。
“一个就成了专门存放操作码的寄存器。
“一个则是专门存放数据的存储器。”
“一条操作码的长度是8位二进制,或2位16进制。也就是1字节。”
“64k_ra,也就是里面有65536个数,每个数有8位。
“我们可以用4位16进制来标识这65536个数,每一个数的地址。”
这样的每一个地址,都叫做内存地址。
因为每个地址里可以存放8位数二进制数据,所以每个地址正好可以放一个操作码。
“所以我们把‘乾兑天天’这个地址,用来存放‘艮坤’代码。”
上面这句话,用地球话翻译就是。
在76ff地址里,写入‘10’代码。
“然后,把剩下7个操作码,也全部存入寄存器中……”
“好了,大功告成!”
程理兴奋的拍手道。
摆在程理眼前的是一个有20米长宽,足足可以放下一个房间的无比繁杂逻辑灵路。
但在程理眼里,这个无比繁杂的逻辑灵路,可以很清楚的分为三大部分。
“这一块,是专门进行运算的加法机,这就是运算单元。”
“这一块,是专门存放数据的ram,这就是存储单元。”
“这一块,是专门存放操作码的寄存器,这就是控制单元。”
“运算单元、存储单元、控制单元,有了这三大部分,并将其结合起来,这就是一个cpu!”程理兴奋道。
“西屁优?”算老疑惑道。
“呃,就是中央处理器,你可以理解为灵力计算机的核心计算单元。”程理回答道。
“现在,我们有了cpu,再加上这个控制面板做输入设备,还有灵灯作为输出设备。
“一台真正意义上的灵力计算机,就彻底做好了!”
在场所
第1页完,继续看下一页