|
知识路径: > 计算机系统基础知识 > 计算机体系结构 > CISC、RISC、流水线技术和超标量等 > 指令系统 >
|
考试要求:掌握
相关知识点:3个
|
|
|
|
从体系结构的观点对指令集进行分类,可以根据下述5个方面。
|
|
|
(1)操作数在CPU中的存储方式,即操作数从主存中取出后保存在什么地方。
|
|
|
(2)显式操作数的数量,即在典型的指令中有多少个显式命名的操作数。
|
|
|
(3)操作数的位置,即任一个ALU指令的操作数能否放在主存中,如何定位。
|
|
|
|
|
按暂存机制分类,根据在CPU内部存储操作数的区别,可以把指令集体系分为3类:堆栈(stack)、累加器(accumulator)和寄存器组(a set of registers)。
|
|
|
通用寄存器机(General-Purpose Register Machines,GPR机)的关键性优点是编译程序能有效地使用寄存器,无论是计算表达式的值,还是从全局的角度使用寄存器来保存变量的值。在求解表达式时,寄存器比堆栈或者累加器能提供更加灵活的次序。更重要的是,寄存器能用来保存变量。当变量分配给寄存器时,访存流量(memory traffic)就会减少,程序运行就会加速,而且代码密度也会得到改善。用户可以用指令集的两个主要特征来区分GPR体系结构。第一个是ALU指令有两个或3个操作数。在三操作数格式中,指令包括两个源操作数和一个目的操作数;在二操作数格式中,有一个操作数既是源操作数又是目的操作数。第二个是ALU指令中有几个操作数是存储器地址,对于典型的ALU指令,这个数可能在1~3之间。
|
|
|