资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,44 机器语言的一般特征,了解机器语言的基本概念;,掌握指令格式、寻址方式、指令字长及指,令类型对指令系统设计的影响;,会根据指令格式、指令字长及寻址方式要,求设计指令的编码。,44 机器语言的一般特征 了解机器语言的基本概念;,1,44 机器语言的一般特征,一、基本概念,1、机器指令,由0、1代码表示,计算机硬件能够识别,并直接执行的操作命令。,2、指令系统,一台计算机所有机器指令的集合,它反,映了该计算机具有的基本功能。它是软件和,硬件的主要界面。,3、指令的执行过程,取指令 分析指令 执行指令,软件,硬件,指令系统,44 机器语言的一般特征一、基本概念1、机器指令,2,地址码,二、指令格式,指明指令所完成的操作,其位数反映了,机器的操作种类即机器指令的条数。,1、操作码,2、地址码,指明与操作数有关的信息,操作数、操,作数地址或运算结果地址。,操作码位数 n 与机器指令条数 m 的关系,2,n,m 或 nlog,2,m,操作码,例:某计算机有78条指令,采用等长操作码,编码需要多少位?,地址码 二、指令格,3,三、地址码格式,指令地址码格式中要指明一条指令操作,数地址的个数及操作数地址采用什么方式给出。,1、三地址指令,OP,A1,A2,A3,功能:(A1)OP(A2)A3,特点,:,(1)两个操作数均保持不变,可再次使用;,(2)适用于字长较长的大、中型机。,三、地址码格式 指令地,4,三、地址码格式,2、二地址指令,OP,A1,A2,功能:(A1)OP(A2)A1,特点,:,(1)操作数A1被运算结果替代;,(2)适用于字长较短的小型机和微型机。,三、地址码格式 2、二地址指令,5,三、地址码格式,3、一地址指令,OP,A,功能:OP(A)A,特点,:,(1)操作数A被运算结果替代;,(2)在许多微型机中,双操作数指令也采,用一地址指令格式,在指令中源操作数由地,址码A给出,另一操作数隐含在累加器AX中。,(AX)OP(A)AX,(3)适用于字长较短的小型机和微型机。,三、地址码格式 3、一地址指令,6,三、地址码格式,4、零地址指令,OP,特点,:,(1)无需任何操作数;,(2)所需操作数是隐含指定的。,三、地址码格式 4、零地址指令,7,四、操作码格式,1、定长的操作码,操作码的位数与位置固定,占据指令最前,面的几位。,IBM370、VAX-11、Intel8086/8088,特点:,(1)简化操作码译码器的设计,缩短指令,译码时间;,(2)指令扩展性差;,(3)广泛用于大、中、小型机及RISC中。,例:一台模型机有7条指令,采用定长操作码,,操作码位数为几位?应采用什么样的译码器?,四、操作码格式 1、定长的操作码,8,四、操作码格式,2、扩展操作码,操作码的位数不固定,占据指令前面若干位。,如,PDP-11,机。,特点:,(1)常用指令用较短的操码,不常用的指令,用较长的操作码,可缩短指令操作码平均长度;,(2)指令扩展性强,便于增加新指令;,(3)指令译码电路复杂;,(4)任何短码不能为长码的前缀,确保编码,的唯一性。,四、操作码格式 2、扩展操作码,9,例:某台计算机的指令系统中共有50条指令,试问:,(1)若采用定长编码方式,其操作码的编码长度需要多少位?,(2)设该指令系统中有10条指令的使用概率为90%,其余为10%,若采用不等长编码方式,其操作码的平均长度为多少?,(3)若原指令系统采有固定长度编码,后继产品中需增加50条指令,试设计其指令操作码,并计算其平均长度。,机器语言的一般特征讲解ppt课件,10,五、指令字长,1、定字长指令,2、变字长指令,指令字长一定,地址码较多用较短操作码,,地址码较少用较长操作码。如PDP-11机,指令字长不同,一般使用频率高的指令用,较短操作码;使用频率低的指令用较长的较长,的操作码。,Pentium机采用可变长指令格式,最短的1,个字节,最长的有12个字节。属于CISC结构。,8086的指令字长为16个字节,80486的指令字,长为111位。,五、指令字长 1、定字长指令2、变字,11,五、指令字长,3、特点:,(1)指令字长为字节的整数倍;,(2)指令字长越长,指令功能丰富,占用,存储空间多读取指令时间长;,练习:某计算机的指令长度为16位,需设置,二地址、一地址和零地址指令三种,每个操,作数的地址码占6位,采用操作码扩展技术,,每种指令最多可安排几条?设计出这三种指,令的格式。,五、指令字长3、特点:(1)指令字长为字节,12,练习:某指令系统指令字长12位,地址码3位,试提出一种方案,使该指令系统有4条三地址指令,8条二地址指令,150条一地址指令,并写出它们的格式。,练习:设指令字长为16位,每个地址码6位,采用扩展操作码技术,设计12条二地址指令,96条一地址指令,50条零地址指令。列出操作码的扩展形式,并计算操作码的平均长度。,机器语言的一般特征讲解ppt课件,13,设指令字长为16位,每个地址码6位,采用扩展操作码技术,设计12条二地址指令100条一地址指令,100条零地址指令。列出操作码的扩展形式,并计算操作码的平均长度。,机器语言的一般特征讲解ppt课件,14,44 机器语言的一般特征,了解机器语言的基本概念;,掌握指令格式、指令字长、寻址方式及指,令类型对指令系统设计的影响;,会根据指令格式、指令字长及寻址方式要,求设计指令的编码。,44 机器语言的一般特征 了解机器语言的基本概念;,15,六、寻址方式,在程序的运行过程中,形成指令地址或,操作地址的方式。,(一)指令的寻址方式,1、顺序寻址方式:程序按其执行的先后次,序存放 在内存中,由PC提供要执行的指令,地址。,2、跳跃寻址方式:由程序控制类指令的执,行而改变原来程序的执行顺序。,六、寻址方式 在程序的运行过程中,形成指令地址或,16,(二)操作数的寻址方式,指令中提供操作数地址(或操作数)的方法。,OP,寻址特征MOD,形式地址 D,1、立即寻址:操作数在指令中。Data=D,2、直接寻址:操作数地址在指令中。EA=D,OP,MOD,D(操作数),OP,MOD,D,操作数,D,特点:速度快,寻址范围受D位数的限制,,寻址空间为2,D,特点:速度快,适用于操作数固定的场合。,(二)操作数的寻址方式指令中提供操作数地址(或操作数)的方法,17,3、存储器间接寻址,操作地址在内存中,在数在指令中给出,的是操作数地址的地址。EA=(D),OP,MOD,D,操作数地址EA,D,操作数,EA,特点:速度慢,可扩大操作数的寻址范围。,例:设指令字长和存储字长均为16位,D=8,,问直接和间接寻址时的寻址范围各为多大?,3、存储器间接寻址OPMODD操作数地址EAD操作数EA特点,18,4、寄存器寻址,操作数在寄存器中,在指令中给出寄,存器号。EA=R,OP,MOD,操作数,5、寄存器间接寻址,操作数地址在寄存器中,在指令中给出,寄存器号。,寄存器组,OP,MOD,EA,操作数,EA,寄存器组,内存,4、寄存器寻址OPMOD操作数5、寄存器间接寻址寄存器组,19,6、隐含寻址,在指令中不指出操作数的地址,操作数的地址,隐含在操作码中,此时操作数一般隐含于堆栈或累,加器中。,特点:可缩短指令字长。,7、基址寻址,操作数的有效地址EA等于指令中的形式地址D,与基址寄存器BR中内容相加。,OP,MOD,D,BR,ALU,操作数,EA,内存,特点:可扩大指令对主存的寻址范围,可实现全空间寻,址。主要用于为程序和数据分配存储空间,基址寄存器,中的内容通常由操作系统或管理程序确定。,6、隐含寻址特点:可缩短指令字长。7、基址寻址OPMODDB,20,7、变址寻址,操作数的有效地址EA等于指令字中的形式地,址D与变址寄存器IX中内容相加。,OP,MOD,D,IX,ALU,操作数,EA,内存,特点:主要用于处理数组问题。,7、变址寻址OPMODDIXALU操作数EA内存特点:主要用,21,8、相对寻址,操作数的有效地址EA等于指令字中的形式,地址D与程序计数器PC中内容相加。EA=PC+D,OP,MOD,D,PC,ALU,操作数,EA,内存,特点:主要用于转移类指令。,指令系统中采用不同寻址方式的目的,主要是缩短指令长度,扩大寻址空间,提高,编程的灵活性。,8、相对寻址OPMODDPCALU操作数EA内存特点:主要用,22,例:一种二地址R-S型(寄存器/存储器)指令的结构如下,所示:,OP,9,通用寄存器,4,I,1,X,2,偏移量D,16,其中I为间接寻址标志位,X为寻址模式字段,D为偏移量,字段。通过I、X、D的组合,可构成下表所示的寻址方,式,请写出表中6种寻址方式的名称。,有效地址E算法,E=D,E=(PC)D,E=(R2)D,E=(R3),E=(D),E=(R1)D,寻址方式名称,说明,PC程序计数器,R2为变址寄存器,R1为基址寄存器,I,0,0,0,1,1,0,X,00,01,10,11,00,11,+,-,+,-,+,-,例:一种二地址R-S型(寄存器/存储器)指令的结构如下OP9,23,(三)Pentium机的寻址方式,寻址方式名称,有效地址E算法,说明,立即,寄存器,直接,基址,基址+偏移量,比例变址+偏移量,基址+变址+偏移量,基址+比例变址+偏移量,相对,E,E,E,E,E,E,E,操作数,在指令中,操作数,在寄存器中,=D,D为偏移量,=(B),=(B)+D,B为基址寄存器,=(I)S+D,I为变址寄存器,S为比例因子,=(B)+(I)+D,=(B)+(I)S+D,=(PC)+D,PC为程序计数器,(三)Pentium机的寻址方式寻址方式名称有效地址E算法说,24,例:某计算机字长16位,运算器16位,有16,个通用寄存器,8种寻址方式,主存容量为,64K字,指令中地址码由寻址方式字段和寄存,器字段组成。,(1)单、双操作数指令最各有多少条?,(2)直接寻址范围有多大?(双字长),(3)间接寻址范围有多大?(单字长),(4)变址寻址(双字长)的范围有多大?,例:某计算机字长16位,运算器16位,有16,25,练习:某机存储字长为32位,共有机器指令100条,指令单字长,等长操作码,CPU内部有通用寄存器32个,可做变址寄存器用。存储器按字节编址,指令拟用直接寻址、间接寻址、变址寻址和相对寻址4种方式。,(1)分别画出采用4种不同寻址方式的单地址指令的指令格式。,(2)采用直接寻址和间接寻址方式时,可寻址的存储器空间各是多少?,(3)写出4种方式下,有效地址E的表达式。,练习:某机存储字长为32位,共有机器指令100条,指令单字长,26,七、指令类型,1、数据传送类指令,2、算术/逻辑运算指令,3、程序控制类指令,4、输入/输出指令,5、其他指令,七、指令类型1、数据传送类指令2、算术/逻辑运算指令3、程序,27,八、RISC指令系统和CISC指令系统的特点,1、RSIC精简指令系统计算机的特点,(1)指令数目较少,选使用频度高的简单指令。,(2)指令长度固定、指令格式、寻址方式种类少。,(3)只有存/取数指令访存,其余指令均在寄存器之间进,行。,(4)大部分指令在一个机器周期内完成,采用流水线技,术。每条指令的平均执行时间小于一个是时钟周期。,(5)CPU中通用寄存器数量相当多。,(6)控制器采用组合逻辑控制,不用微程序控制。,(7)采用优化的编译程序。,(8)指令功能简单使得程序代码较长,占用较多的存储,空间。,如:SPARC机只有75条指令,3种指令格式,4种寻址方,式120136个寄存器。MIPS R4000 94/1/32,八、RISC指令系统和CISC指令系统的特点,28,2、CISC复杂指令系统计算机的特点,(1)指令系统复杂庞大。(200300条),(2)寻址方式、指令格式多。,(3)指令字长不固定。,(4)可访存指令多。,(5)指令使用频率、执行时间相差大。,(6)
展开阅读全文