东北大学微机原理第2讲ppt课件.pptx
《东北大学微机原理第2讲ppt课件.pptx》由会员分享,可在线阅读,更多相关《东北大学微机原理第2讲ppt课件.pptx(29页珍藏版)》请在三一办公上搜索。
1、CPU指令集分类,复杂指令集,Complex Instruction Set Computer -CISC),精简指令集(Reduced Instruction Set Computing-RISC),指令是指示计算机执行某些操作的命令。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。指令系统是计算机的主要属性,位于硬件和软件的交界面上,1 指令系统,早期的CPU全部是CISC架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。比如对于乘法运算,在CISC架构的CPU上,需要这样一条指令: MUL ADDRA, ADDRB 就可以将ADDRA和ADDRB中的数相乘并将结果
2、储存在ADDRA中。将ADDRA, ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作全部依赖于CPU中设计的逻辑来实现。这种架构会增加CPU结构的复杂性和对CPU工艺的要求,但对于编译器的开发十分有利。比如上面的例子,C程序中的a*=b就可以直接编译为一条乘法指令。,在CISC微处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。今天只有Intel及其兼容CPU还在使用CISC架构。后续章节中所讲述的8086 CPU和MSC-51单片机的指令集都属于复杂指令集。,RISC架构要求软件来指
3、定各个操作步骤。上面的例子如果要在RISC架构上实现,将ADDRA, ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作都必须由软件来实现,程序: MOV A, ADDRA; MOV B, ADDRB; MUL A, B; STR ADDRA, A。 这种架构可以降低CPU的复杂性以及允许在同样的工艺水平下生产出功能更强大的CPU,但对于编译器的设计有更高的要求,与传统的CISC相比,RISC的指令格式统一,种类比较少,寻址方式也比复杂指令集少。当然处理速度就提高很多了。目前在中高档服务器中普遍采用这一指令系统的CPU,特别是高档服务器全都采用RISC 指令系统的CPU:PowerPC
4、处理器、SPARC 处理器、PA-RISC 处理器、MIPS 处理器、Alpha 处理器。目前一些嵌入式的CPU也采用RISC指令集。,指令格式,从二进制位串上讲,一条指令中包含两部分:操作码(Operation Code)和地址码(Address Code)。其中操作码表明了指令的操作性质及功能,地址码则给出了操作数的地址(即操作数的存储位置)。,指令是指示计算机执行某些操作的命令。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。指令系统是计算机的主要属性,位于硬件和软件的交界面上,1 指令系统,(1)地址码结构计算机执行一条指令所需要的全部信息都必须包含在指令中。对于一般的双操作
5、数运算类指令来说,除去操作码之外,指令还应包含以下信息:第一操作数地址,用A1表示。第二操作数地址,用A2表示。操作结果存放地址,用A3表示。下条将要执行指令的地址,用A4表示。这样,一条指令的格式可以细分为(OP表示具体的操作,Ai表示地址):,指令的含义: (A1) OP (A2) A3 下条将要执行指令存储在地址为A4开始的存储单元,优点:四地址指令格式的具有直观,下条指令的地址明显缺点:指令长度较长,占用的存储空间较大。,如果将指令按顺序依次存储在存储器中,用一个程序计数器(Program Counter,PC)来存放指令地址。通常每执行一条指令,PC就自动加1(设每条指令只占一个主存
6、单元),直接得到将要执行的下一条指令的地址。,指令的含义:(A1) OP (A2 ) A3 (PC) + 1 PC (隐含),执行一条三地址的双操作数运算指令,至少需要访问4次主存。第一次取指令本身,第二次取第一操作数,第三次取第二操作数,第四次保存运算结果。这种格式省去了一个地址,但指令长度仍比较长,所以在微型计算机中很少使用。,三地址指令执行完后,主存中的两个操作数均不会被破坏。然而,通常并不一定需要完整的保留两个操作数。如果让第一操作数地址同时兼作存放结果的地址(目的地址),这样即得到了二地址指令,其格式为:,指令的含义: (A1) OP (A2 ) A1 (PC) + 1 PC (隐含
7、)通常把A1称为目的操作数地址,A2称为源操作数地址。执行一条二地址的双操作数运算指令,同样至少需要访问4次主存。,只有一个地址的指令为一地址指令。那么另一个操作数来自何方呢?指令中虽未明显给出,但隐含着放在CPU内部的一个特殊存储器(专门寄存器)中的操作数。因为这个寄存器在连续性运算时,保存着多条指令连续操作的累计结果,故称为累加寄存器(Accumulator,Acc)。它的指令格式为:,指令的含义: (Acc) OP (A1) Acc (PC) + 1 PC (隐含),执行一条一地址的双操作数运算指令,只需要访问两次主存。第一次取指令本身,第二次取第二操作数。第一操作数和运算结果都放在累加
8、寄存器中,所以读取和存入都不需要访问存储器。,(2)操作码,指令系统中的每一条指令都有一个唯一确定的操作码,指令不同,其操作码的编码也不同。通常,希望用尽可能短的操作码字段来表达全部的指令。指令操作码的编码可以分为定长编码和变长编码两类。,定长编码是一种最简单的编码方法,操作码字段的位数和位置是固定的。为了能表示整个指令系统中的全部指令,指令的操作码字段应当具有足够的位数。定长编码对于简化硬件设计、减少指令译码的时间是非常有利的,在字长较长的大、中型计算机及超级小型计算机上广泛采用。,变长编码的操作码字段的位数不固定,且分散地放在指令字的不同位置上。这种方式能够有效地压缩指令中操作码字段的平均
9、长度,在字长较短的微型计算机上广泛采用。,最常用的非规整型编码方式是扩展操作码法。因为如果指令长度一定,则地址码与操作码字段的长度是相互制约的。为了解决这一矛盾,让操作数地址个数多的指令(三地址指令)的操作码字段短些,操作数地址个数少的指令(一或零地址指令)的操作码字段长些,这样既能充分地利用指令的各个字段,又能在不增加指令长度的情况下扩展操作码的位数,使它能表示更多的指令。,例如:设某计算机的指令长度为16位,操作码字段为4位,有3个4位的地址码字段,其格式为:,如果按照定长编码的方法,4位操作码最多只能表示16条不同的三地址指令。假设指令系统中不仅有三地址指令,还有二地址指令、一地址指令和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 东北大学 微机 原理 ppt 课件

链接地址:https://www.31ppt.com/p-1653272.html