第04章 指令系统

第04章 指令系统

ID:19523668

大小:203.50 KB

页数:35页

时间:2018-10-03

第04章  指令系统_第1页
第04章  指令系统_第2页
第04章  指令系统_第3页
第04章  指令系统_第4页
第04章  指令系统_第5页
资源描述:

《第04章 指令系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章指令系统指令格式及其设计指令和数据的寻址方式简化指令集计算机指令操作码:说明指令操作的性质和功能地址码:操作数源地址操作结果地址下一条指令的地址指令=操作码+地址码+…+地址码n个4.1指令格式及其设计指令:计算机硬件能识别并直接执行的操作命令,即机器指令。指令系统:一台计算机所能执行的全部指令的集合。4.1.1指令格式下面以运算类指令为例来说明地址码的设计.它需要两个源操作数地址,一个目的操作数地址.早期的CPU中没有PC(程序计数器),因此在指令中需要指出下一条指令地址.此时需4个操作数地址.操作码源1源2目的下条指令地址4.1.2指令操作数地址码格式n=4四地址指令n=3三地址指令

2、,用PC代替下一条指令地址n=2二地址指令,一个源操作数地址兼作目的操作数地址n=1一地址指令,其中一个地址为隐含地址.n=00地址指令,没有地址码。如停机指令。操作数本身寄存器地址主存单元地址地址偏移量4.1.3指令操作码的格式目的:确定操作码位数和编码方式定长操作码:系统中有n条指令,操作码需要Log2n位,结构简单,便于译码处理变长操作码:操作码长度可变,使指令格式编排高效、紧凑,能缩短指令操作码的平均长度,但增加了指令译码的难度地址码的内容例:设某台计算机有100条指令,(1)采用固定长度操作码编码,试设计其操作码的编码(2)如果这100条指令中有10条指令的使用概率达90%,其余90

3、条指令的使用概率为10%,即在实际程序中,90%的指令只是10条常用指令.试采用不等长编码设计一种操作码编码的方案,并求出操作码的平均长度.解:(1)采用固定长度操作码编码时,需用7位操作码,用0000000到1100011之间的代码代表100条指令,即:0000000指令0的操作码0000001指令1的操作码……1100011指令99的操作码余下从1100100到1111111共28个代码可用于增加新指令,每条指令的操作码的长度均为7用4位代码对10条常用指令进行编码,用8位代码对90条不常用的代码进行编码,即:0000指令0的操作码0001指令1的操作码……1001指令9的操作码10100

4、000指令10的操作码10100001指令11的操作码……11111001指令99的操作码指令操作码的平均长度:4*90%+8*10%=4.4(位)4位10条8位90条指令操作码扩展技术:在指令中有一个固定长度的字段表来表示基本操作码,而对于一部分不需要某个地址码的指令,把他们的操作码扩充到该地址字段,称扩展操作码技术.优点:使定长的指令代码实现更多条的指令功能.缺点:扩展操作码译码较复杂,硬件设计难度加大例:设某机器的指令字长为16位,包括基本操作码4位和三个地址字段,每个地址字段长4位,其格式为(见下页):试设计一个扩展操作码,能对下列指令译码:15条三地址指令,14条两地址指令,31条一

5、地址指令,16条零地址指令4.1指令格式及其设计0000XXXXYYYYZZZZXXXXYYYYZZZZ0000YYYYZZZZ11111101YYYYZZZZ11100000ZZZZ111111100001ZZZZ11101111ZZZZ111111110000ZZZZ11111110ZZZZ11111111111100001111111111111111……………15条三地址指令14条两地址指令31条一地址指令16条零地址指令OPA1A2A303478111215扩展操作码标志扩展操作码标志扩展操作码标志指令字长:一个指令中包含二进制代码的位数单字长指令:指令字长度等于机器字长度的指令双字

6、长指令:指令字长度等于两个机器字长度的指令机器字长:计算机能直接处理的二进制数据的位数,通常与主存单元的位数一致.例:指令格式如下所示,其中OP为操作码,试分析指令格式的特点.解:(1)单字长二地址指令(设机器字长为16位)(2)操作码字段OP可以指定27=128条指令(3)为RR型指令,两个操作数均在寄存器中OP---源寄存器目的寄存器03479154.1.4指令字长度1.指令操作码要有适当的的长度,以便能表示出所有的机器指令。在设计时应协调好操作码和地址码两者的长度。2.一般说,指令长度短一些好.指令短占用的存储单元少,减少访存次数,提高指令的执行速度,指令长虽然可以包含更多的操作信息,增

7、强指令系统的功能,但需占用多个存储单元,需多次访问内存才能取出该指令。3.指令长度应是存储单元字长的整数倍,以充分利用存储空间。4.地址码的表示形式也会直接影响指令代码长度。5.为优化指令系统,通常会采用变长指令,扩展操作码和多种地址码表示形式。Intel8086/8088指令系统中,指令长度有单、双、三、四、五、六字节六种,地址格式有0、1、2地址三种形式。4.1.5设计一个指令系统应考虑的问题

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。