您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 东北大学微机原理第2讲
微型机原理与程序设计第2讲中央处理单元--CPU指令格式操作码地址码从二进制位串上讲,一条指令中包含两部分:操作码(OperationCode)和地址码(AddressCode)。其中操作码表明了指令的操作性质及功能,地址码则给出了操作数的地址(即操作数的存储位置)。指令是指示计算机执行某些操作的命令。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。指令系统是计算机的主要属性,位于硬件和软件的交界面上,1指令系统MOVAX,BX微型机原理与程序设计第2讲中央处理单元--CPU(1)地址码结构计算机执行一条指令所需要的全部信息都必须包含在指令中。对于一般的双操作数运算类指令来说,除去操作码之外,指令还应包含以下信息:第一操作数地址,用A1表示。第二操作数地址,用A2表示。操作结果存放地址,用A3表示。下条将要执行指令的地址,用A4表示。这样,一条指令的格式可以细分为(OP表示具体的操作,Ai表示地址):OPA1A2A3A4指令的含义:(A1)OP(A2)→A3下条将要执行指令存储在地址为A4开始的存储单元优点:四地址指令格式的具有直观,下条指令的地址明显缺点:指令长度较长,占用的存储空间较大。微型机原理与程序设计第2讲中央处理单元--CPU如果将指令按顺序依次存储在存储器中,用一个程序计数器(ProgramCounter,PC)来存放指令地址。通常每执行一条指令,PC就自动加1(设每条指令只占一个主存单元),直接得到将要执行的下一条指令的地址。OPA1A2A3指令的含义:(A1)OP(A2)→A3(PC)+1→PC(隐含)执行一条三地址的双操作数运算指令,至少需要访问4次主存。第一次取指令本身,第二次取第一操作数,第三次取第二操作数,第四次保存运算结果。这种格式省去了一个地址,但指令长度仍比较长,所以在微型计算机中很少使用。微型机原理与程序设计第2讲中央处理单元--CPU三地址指令执行完后,主存中的两个操作数均不会被破坏。然而,通常并不一定需要完整的保留两个操作数。如果让第一操作数地址同时兼作存放结果的地址(目的地址),这样即得到了二地址指令,其格式为:OPA1A2指令的含义:(A1)OP(A2)→A1(PC)+1→PC(隐含)通常把A1称为目的操作数地址,A2称为源操作数地址。执行一条二地址的双操作数运算指令,同样至少需要访问4次主存。MOVAX,BX微型机原理与程序设计第2讲中央处理单元--CPU只有一个地址的指令为一地址指令。那么另一个操作数来自何方呢?指令中虽未明显给出,但隐含着放在CPU内部的一个特殊存储器(专门寄存器)中的操作数。因为这个寄存器在连续性运算时,保存着多条指令连续操作的累计结果,故称为累加寄存器(Accumulator,Acc)。它的指令格式为:OPA1指令的含义:(Acc)OP(A1)→Acc(PC)+1→PC(隐含)执行一条一地址的双操作数运算指令,只需要访问两次主存。第一次取指令本身,第二次取第二操作数。第一操作数和运算结果都放在累加寄存器中,所以读取和存入都不需要访问存储器。例:MULBL微型机原理与程序设计第2讲中央处理单元--CPU(2)操作码指令系统中的每一条指令都有一个唯一确定的操作码,指令不同,其操作码的编码也不同。通常,希望用尽可能短的操作码字段来表达全部的指令。指令操作码的编码可以分为定长编码和变长编码两类。定长编码是一种最简单的编码方法,操作码字段的位数和位置是固定的。为了能表示整个指令系统中的全部指令,指令的操作码字段应当具有足够的位数。定长编码对于简化硬件设计、减少指令译码的时间是非常有利的,在字长较长的大、中型计算机及超级小型计算机上广泛采用。微型机原理与程序设计第2讲中央处理单元--CPU例如:设某计算机的指令长度为16位,操作码字段为4位,有3个4位的地址码字段,其格式为:如果按照定长编码的方法,4位操作码最多只能表示16条不同的三地址指令。假设指令系统中不仅有三地址指令,还有二地址指令、一地址指令和零地址指令,利用扩展操作码法可以使在指令长度不变的情况下,指令的总数远远大于16条。指令系统中要求有15条三地址指令、15条二地址指令、15条一地址指令和16条零地址指令,共61条指令。显然,只有4位操作码是不够的,解决的方法就是向地址码字段扩展操作码的位数。扩展的方法是:变长编码微型机原理与程序设计第2讲中央处理单元--CPU4位操作码的编码0000~1110定义了15条三地址指令,留下1111作为扩展窗口,与下一个4位(A1)组成一个8位的操作码字段。8位操作码的编码11110000~11111110定义了15条二地址指令,留下11111111作为扩展窗口,与下一个4位(A2)组成一个12位的操作码字段。微型机原理与程序设计第2讲中央处理单元--CPU12位操作码的编码111111110000~111111111110定义了15条一地址指令,扩展窗口为111111111111,与A3组成16位的操作码字段。最后,16条零地址指令由16位操作码的编码给出。微型机原理与程序设计第2讲中央处理单元--CPUCPU指令集分类复杂指令集,ComplexInstructionSetComputer--CISC)精简指令集(ReducedInstructionSetComputing-RISC)微型机原理与程序设计第2讲中央处理单元--CPU2寻址技术所谓寻址,指的是寻找操作数的地址或下一条将要执行的指令地址,寻址技术是计算机设计中硬件对软件最早提供支持的技术之一。寻址技术包括编址方式和寻址方式。编址方式编址方式是指对各种存储设备进行编码的方式。在计算机中需要编址的设备主要有CPU中的通用寄存器、主存储器和输入输出设备3种。目前常用的编址单位有字编址、字节编址和位编址。微型机原理与程序设计第2讲中央处理单元--CPU目前使用最普遍的编址方式是字节编址,这是为了适应非数值应用的需要。字节编址方式使编址单位与信息的基本单位(一个字节)相一致,这是它的最大优点。指令中地址码的位数指令格式中每个地址码的位数是与主存容量和最小寻址单位(即编址单位)有关联的。优点:缺点:然而,如果主存的访问单位也是一个字节的话,那么主存的带宽就太窄了,所以编址单位和主存的访问单位是不相同的。通常主存的访问单位是编址单位的若干倍。在采用字节编址的机器中,如果指令长度是32位。那么每执行完一条指令,程序计数器要加4。如果数据字长是32位,当连续访问存储器时,每读写完一个数据字,地址寄存器要加4。由此可见,字节编址方式存在着地址信息的浪费。微型机原理与程序设计第2讲中央处理单元--CPU指令寻址和数据寻址寻址可以分为指令寻址和数据寻址。寻找下一条将要执行的指令地址称为指令寻址,寻找操作数的地址称为数据寻址。指令寻址比较简单,它又可以细分为顺序寻址和跳跃寻址。而数据寻址方式种类较多,其最终目的都是寻找所需要的操作数。顺序寻址可通过程序计数器加1,自动形成下一条指令的地址;跳跃寻址则需要通过程序转移类指令实现。JMPNEXT跳跃寻址的转移地址形成方式有3种:直接(绝对)、相对和间接寻址,它与下面介绍的数据寻址方式中的直接、相对和间接寻址是相同的,只不过寻找到的不是操作数的有效地址而是转移的有效地址而已。JMPNEXT;JMPAX;JMP[AX];微型机原理与程序设计第2讲中央处理单元--CPUCPU的寄存器微型机原理与程序设计第2讲中央处理单元--CPU基本数据寻址方式数据寻址方式是根据指令中给出的地址码字段寻找真实操作数地址的方式。指令中的形式地址有效地址寻址方式立即寻址指令中的地址码不是操作数的地址,而是操作数本身例:MOVAX,1234H微型机原理与程序设计第2讲中央处理单元--CPU寄存器寻址直接寻址指定的寄存器中存放着操作数指令中地址码给出的地址A就是操作数的有效地址,即:EA=A例:MOVCX,BX微型机原理与程序设计第2讲中央处理单元--CPU间接寻址间接寻址意味着指令中给出的地址A不是操作数的地址,而是存放操作数地址的主存单元的地址,简称操作数地址的地址。微型机原理与程序设计第2讲中央处理单元--CPU寄存器间接寻址指令中的地址码给出某一通用寄存器的编号,在被指定的寄存器中存放操作数的有效地址,而操作数则存放在主存单元中例:MOVCX,[BX]微型机原理与程序设计第2讲中央处理单元--CPU变址寻址变址寻址就是把变址寄存器Rx的内容与指令中给出的形式地址A相加,形成操作数有效地址,即EA=(Rx)+A。Rx的内容称为变址值MOVAL,[SI+1234H]微型机原理与程序设计第2讲中央处理单元--CPU基址寻址基址寻址是将基址寄存器Rb的内容与指令中给出的位移量D相加,形成操作数有效地址,即EA=(Rb)+D。基址寄存器的内容称为基址值。指令的地址码字段是一个位移量,位移量可正、可负MOVAL,[BP+1234H]微型机原理与程序设计第2讲中央处理单元--CPU相对寻址相对寻址是基址寻址的一种变通,由程序计数器(PC)提供基准地址,指令中的地址码字段作为位移量D,两者相加后得到操作数的有效地址,即EA=(PC)+D微型机原理与程序设计第2讲中央处理单元--CPU3CPU结构和功能1)指令控制程序的顺序控制,称为指令控制。由于程序是一个指令序列,这些指令的相互顺序不能任意颠倒,必须严格按程序规定的顺序进行,因此,保证机器按顺序执行程序是CPU的首要任务。2)操作控制一条指令的功能往往是由若干个操作信号的组合来实现的。因此,CPU管理并产生由内存取出的每条指令的操作信号。把各种操作信号送往相应的部件,从而控制这些部件按指令的要求进行动作。3)时间控制对各种操作实施时间上的控制,称为时间控制。因为在计算机中,各种指令的操作信号均受到时间的严格控制。另一方面,一条指令的整个执行过程也受到时间的严格控制。只有这样,计算机才能有条不紊地自动工作。4)数据加工所谓数据加工,就是对数据进行算术运算和逻辑运算处理。完成数据的加工处理,这是CPU的根本任务。因为,原始信息只有经过加工处理后才能对人们有用。数据加工过程是由复杂数字电路构成的运算器完成的。微型机原理与程序设计第2讲中央处理单元--CPU1.3.3指令周期CPU每取出并执行一条指令所需的全部时间叫指令周期,即CPU完成一条指令的时间叫指令周期取址阶段执行阶段取址周期执行周期指令周期图1-3-15指令周期的定义示意微型机原理与程序设计第2讲中央处理单元--CPU1.3.3指令周期CPU每取出并执行一条指令所需的全部时间叫指令周期,即CPU完成一条指令的时间叫指令周期取址周期指令周期取指周期执行周期指令周期取址周期执行周期指令周期无条件转移指令加法指令乘法指令图1-3-16各种指令周期的比较微型机原理与程序设计第2讲中央处理单元--CPU1.3.3指令周期1)取指周期取指周期是为了取指令2)间址周期间址周期是为了取有效地址3)执行周期执行周期是为了取操作数4)中断周期中断周期是为了保存程序断点取指周期有间址吗?有中断吗?是是否否间指周期执行周期中断周期图1-3-18指令周期流程DFEDINDDEXDINTCLK1FE1IND1EX1INT图1-3-19CPU工作周期的标志微型机原理与程序设计第2讲中央处理单元--CPU4参数与型号时钟频率/主频地址总线宽度数据总线宽度时钟频率,是提供计算机定时信号的一个源,这个源产生不同频率的基准信号,用来同步CPU的每一步操作。对于同类CPU来说,时钟频率越高,CPU的运算速度也就越快。地址总线宽度指的是地址总线的条数。地址总线宽度决定了CPU可以访问的存储器地址空间范围。CPU最大能访问的存储器空间范围称为CPU的寻址能力,或被称为CPU的寻址范围或寻址空间。数据总线宽度指的是数据总线的条数。数据总线宽度则决定了CPU与主存以及输入输出设备之间进行一次数据传输的信息量。也就是一次传输的二进制位数。微型机原理与程序设计第2讲中央处理单元--CPU4参数与型号
本文标题:东北大学微机原理第2讲
链接地址:https://www.777doc.com/doc-4129852 .html