首页 > 代码库 > cpu设计-->cpu必须有哪些指令
cpu设计-->cpu必须有哪些指令
从软件的角度来看CPU,似乎CPU 就是一连串的指令符号构成的。因而,我们设计一个CPU,首先就要考虑应该设计哪些指令。计算机的指令系统需要根据任务需求来规划,一般都会有算术运算指令、逻辑运算指令、数据传送指令、访问存储器指令、结构转移指令等。
我们设计一个简单的CPU,一般也要有加、减、乘、除这四种算数运算,所以该CPU要有加、减、乘、除运算的指令。其实任何一个CPU都不能缺少算术运算的功能,因而算术运算的指令对每一个CPU都是不能缺少的指令。
如果你是一个软件编程人员,那么你一定熟悉程序的基本结构。顺序结构、分支结构、循环结构和子程序调用结构,这些都是程序编写中所不能缺少的基本结构,可以肯定地说,任何简单的或复杂的软件程序,都离不开这四种结构,也不会超出这四种结构。为了能够实现这四种结构的程序设计,我们必须设计出无条件转移指令、条件转移指令、子程序调用指令、子程序返回指令等。无条件转移和条件转移相配合,可以实现循环结构和分支结构。子程序调用指令和返回指令配合,可以重复利用各种功能程序,能够达到程序结构的深层嵌套。为了实现程序的循环和结构,我们至少要有判断数值为零和为负数的转移指令。
由于程序和数据都放在存储器当中,不论取出指令执行,还是对存储器进行数据的读写,都必须访问存储器,所以写存储器指令、读存储器指令都必不可少。
除了以上提出的指令之外,还要有寄存器之间数据传输指令。另外,编程时还要考虑数据从何处输入。CPU数据的输入有两种方式,一种是程序执行中从外部接收数据,一种是将数据在编程时就放入指令当中。后面的这种数据进入CPU 的方式相对简单,前面的数据输入方式需要外部设备进行配合,自然设计起来较为复杂一些。
计算机之所以能够为我们人类从事脑力劳动,一个重要的问题是能够进行人机信息交互。我们将自己的想法通过程序的方式告诉CPU,而CPU必需将处理的结果输出给我们看。CPU什么时候把什么信息告诉我们,也必需在设计CPU时,确定出相应的数据输出指令。
cpu设计-->cpu必须有哪些指令