CPU 指令集

开始学习指令集,指令系统的概括,图片来源与国防科大的视频,共勉。

作为初学者,如有理解错误,请大家指正 。

  C=A+B 一般而言,就是A地址的内容+B地址的内容,相加的值,存入C地址。

讲解:

1. 堆栈类型,将A地址的内容,压入堆栈,将B地址的内容,压入堆栈,相加的值放到栈顶,将栈顶的值pop到C地址。

2.累加器类型: 将存储器a地址的操作数放到累加器ac,把累加器的操作数与b地址的操作数加起来,放到累加器里,把累加器的值存回到c.

3.寄存器存存器类型:通用寄存器组,就是即可以是寄存器,也可以是存储器,有存储功能,就对于硬件实现而言,就可以理解成是可以保持一段时间不变, 所以: 将a的内容存到r1 ,加上b地址的内容存到r1, 将r1的值存到c.

4. 寄存器寄存器类型:没有存储功能,就不能直接像第3点一样存储.

 

计算数组,a1...an + b1...bn  赋值给c1...cn

下方图片: 最右边是一个存储器,abc数组在存储器里, code绿色部分 指的自己写的代码翻译成二进制存储的位置。 一个N  ,存储加的次数,加n=100个,就存(-100),one 存1 .

 

代码讲解:

核心--因为cpu就只有一个ac一个存储器,所以每次计算完成之后,就要将值存储到存储器里面去。(早期的暂存太少,只能这样倒腾)

load adr f1 将f1 的地址域提出来,f1就是load a ,其地址就是a的地址。

 

发展:多增加一个IX寄存器存储单元,存储循环变量单元。 这样子操作下来很省力,于是就发展了很多的通用寄存器,可以做基地,IX变址。

             

 

堆栈型指令集: 计算原则,栈顶与次栈顶 做运算。加减乘除,遇到数据就压入堆栈。

  

 

posted @ 2021-09-07 12:39  嘻哈先生_谈IC  阅读(724)  评论(0)    收藏  举报