精华内容
下载资源
问答
  • 扩展操作码技术
    千次阅读
    2020-06-11 18:03:58

    计算机组成原理(唐朔飞第二版)301页,为什么采用扩展操作码技术后,比如说四位操作码就最多只能有15条一地址指令!这么做的主要作用是什么?

    这是操作码不固定的指令格式,四位是基本的操作码,还可以扩充,但是指令的字数不变,就是说把不用的地址码部分可以做操作码用。
    例如:假设某机器的指令长度为16位,包括4位基本操作码和三个4位地址码段。
    ①表示三地址指令:因有4位操作码则能表示16条;
    ②表示二地址指令:因有8位操作码则可表示256条;
    ③表示一地址指令:因有12位操作码则可表示4096条
    如果需要三地址、二地址、一地址指令各15条、零地址指令16条,则一样能够采用可变格式操作码实现。
    例如可以这样规定:
    15条三地址指令的操作码为:0000 ~ 1110 (操作码4位可表示16条指令,由于只有15条,所以还剩余一种状态1111,可以做二地址指令的标记)
    15条二地址指令的操作码为:前4位1111, 即 1111 0000 ~ 1111 1110
    15条一地址指令的操作码为:前8位均为1, 即 11111111 0000 ~11111111 1110
    16条零地址指令的操作码为:前12位均为1, 即 1111111111110000~1111111111111111
    不是一定要 多少条的
    是为了方便 才 15条的
    (操作码4位可表示16条指令,由于只有15条,所以还剩余一种状态1111,可以做二地址指令的标记)

    原址连接

    更多相关内容
  • 第11章 扩展操作码技术.ppt
  • 扩展操作码技术

    千次阅读 2020-05-13 15:45:30
    方法一:固定操作码的设计方式 0000 XXXX YYYY ZZZZ 1111 XXXX YYYY ZZZZ 16条三地址指令 方法二: 可变操作码的设计方法 扩展方式1: 0000 XXXX YYYY ZZZZ 1110 XXXX YYYY ZZZZ 15条三地址指令 1111 0000 XXXX YYYY...

    扩展操作码的技术
    方法一:固定操作码的设计方式
    0000 XXXX YYYY ZZZZ
    1111 XXXX YYYY ZZZZ 16条三地址指令
    方法二:
    可变操作码的设计方法
    扩展方式1:
    0000 XXXX YYYY ZZZZ
    1110 XXXX YYYY ZZZZ 15条三地址指令

    1111 0000 XXXX YYYY
    1111 1110 XXXX YYYY 15条二地址指令

    1111 1111 0000 XXXX
    1111 1111 1110 YYYY 15条一地址指令

    1111 1111 1111 0000
    1111 1111 1111 1111 16条零地址指令
    扩展方式2:
    0000 XXXX YYYY ZZZZ
    1110 XXXX YYYY ZZZZ 15条三地址指令

    1111 0000 XXXX YYYY
    1111 1101 XXXX YYYY 14条二地址指令

    1111 1110 0000 XXXX
    1111 1110 1111 XXXX 16条一地址指令

    1111 1111 0000 XXXX
    1111 1111 1110 XXXX 15条一地址指令

    1111 1111 1111 0000
    1111 1111 1111 1111 16条零地址指令

    展开全文
  • 计算机组成原理:扩展操作码技术

    万次阅读 多人点赞 2020-04-09 15:10:37
    首先看看什么是扩展操作码技术: 当采用统一操作码,指令长度与各类指令的地址长度发生矛盾时,通常采用“扩展操作码”技术加以解决。扩展操作码是一种指令优化技术,即让操作码的长度随地址数的减 少而增加(即扩展...

    今天有个好友问我一道《计算机组成原理》(唐朔飞) 中的例题,是关于扩展操作码的,为了让自己理解更加深刻一点,就写了这篇博客.

    首先看看什么是扩展操作码技术:

    当采用统一操作码,指令长度与各类指令的地址长度发生矛盾时,通常采用“扩展操作码”技术加以解决。 扩展操作码是一种指令优化技术即让操作码的长度随地址数的减  少而增加(即扩展)。根据不同的地址指令格式,如三地址、二地址、单地址指令等,操作码的位数可以有不同的选择,从而在满足需要的前提下有效地缩短了指令长度

    问题:(书本302页的例7.2)

           假设指令字长为16位,操作数的地址码为6位,指令有零地址、一地址、二地址三种格式.采用扩展操作码技术,若二地址指令有X种,零地址指令有Y种,则一地址指令最多有几种?

     书上给出的解答是: 采用扩展操作码技术,操作码位数可变,则二地址、一地址和零地址的操作码长度分别为4位、10位和16位.可见二地址指令操作码每减少一种,就可多构成2^6种一地址指令操作码;一地址指令操作码每减少一种,就可多构成2^6种零地址指令操作码.好友对于划线处不太理解,我个人的解释为:减少一条二地址指令,就是将一个特定的4位操作码变为一地址指令,地址就是6位,还有10位,除去特定的4位,还有10-4位可以任意组合,所以就是2^6种,零地址也是一样.

    所以一地址指令最多有 ( 2^4 - X ) * 2^6 种,设一地址指令有M种,则零地址指令最多有 [ ( 2^4 - X ) * 2^6 - M ] * 2^6 种.根据题中给出零地址有Y种,即Y = [ ( 2^4 - X ) * 2^6 - M ] * 2^6 ,则一地址指令M = ( 2^4 - X ) * 2^6 - Y * 2^6

     

    附加一道题帮助理解吧!这道题是教我们这门课的林楠老师的PPT上的一道例题.

    某指令系统,指令字长为16位,地址码长度为4位,试提出一种分配方案,使该指令系统有15条三地址指令,14条两地址指令,31条单地址指令,并留有表示零地址指令的可能。

    展开全文
  • 计组——扩展操作码

    千次阅读 2021-04-18 16:24:26
    文章目录一、扩展操作码二、扩展操作码的编码三、扩展操作码计算练习ⅠⅡ完 一、扩展操作码 MARIE的指令集中采用固定长度的操作码表示不同的指令类型 指令分为两大类:定长指令和变长指令,它们各有优缺: 定长...

    一、扩展操作码

    MARIE的指令集中采用固定长度的操作码表示不同的指令类型

    在这里插入图片描述
    指令分为两大类:定长指令和变长指令,它们各有优缺:

    • 定长指令的译码相对容易但是浪费了存储空间
    • 变长指令译码复杂

    而在实际运用过程中:不同类型的指令需要的操作数数量往往不同

    因此,产生了扩展操作码(Expanding Opcodes):在定长的指令中,通过变长的操作码,表示更多的指令类型

    在这里插入图片描述

    二、扩展操作码的编码

    区别操作码的长度:采用转义操作码(Escape Opcode)。转义操作码的作用是为了表示操作码的编码超过当前长度。

    编码要避免操作码的重复

    假设某体系结构中地址长度为4,如何采用16位字长的指令编码下列指令:
    15条三地址指令,14条双地址指令,31条单地址指令,16条零地址指令

    在这里插入图片描述
    以上编码的流程:

    • 获取字长16、单个地址长度4

    • 从指令最短(16-4×3=4)、地址最长(4×3=12)的三地址指令开始,将前15条作为三地址指令,即0000 R1 R2 R3~1110 R1 R2 R3为三地址指令
      唯一剩余的指令1111作为转义码,它是非三地址指令的标志

    • 14条二地址指令,用1111 0000 R1 R2~1111 1101 R1 R2表示
      还剩余两条指令1111 11101111 1111作为转义码,它是非二、三地址指令的标志

    • 31条一地址指令,由于四位只能表示16条指令,恰好有两个转义码,刚好够,用1111 1110 0000 R1~1111 1111 1110 R1表示
      还剩一条指令1111 1111 1111作为转义码它是无地址指令的标志

    • 最后剩下的刚好就是16条地址指令1111 1111 1111 0000~1111 1111 1111 1111作为无地址指令

    此时:每条指令都是唯一的,通过识别转义码能够找到唯一的操作,对译码操作是非常友好的

    if(IR[15:12] != 1111){
    	译码并执行对应的三地址指令
    }else(IR[15:9] != 1111 111){
    	译码并执行对应的双地址指令
    }else(IR[15:4] != 1111 1111 1111){
    	译码并执行对应的单地址指令
    }else{
    	译码并执行对应的零地址指令
    }
    

    三、扩展操作码计算练习

    假设地址长度为4,指令长度为8
    15条单地址指令,最多_____条无地址指令;
    14条单地址指令,最多_____条无地址指令;
    13条单地址指令,最多_____条无地址指令;

    答:
    	16。操作码4+地址4,0000~1110作为单地址指令,转义码1111,1111 0000~1111 1111作为无地址指令,共16
    	32。0000~1101作为单地址指令,转义码1111和1110,1110 0000~1111 1111作为无地址指令,共32
    	48。0000~1100作为单地址指令,转义码1111、1110和1101,1101 0000~1111 1111作为无地址指令,共48
    

    在这里插入图片描述

    某台计算机指令字长为32,地址长度为12,假设有250条双地址指令,那么最多还可以有_____条单地址指令

    答:
    	双地址指令为操作码8位+地址一12位+地址二12位,2^8=256>250,因此足够表示双地址指令。那么就用前250个操作码0000 0000~1111 1001(0~249,共250)作为双地址指令。
    	剩余的操作码作为转义码,1111 1010~1111 1111(250~255,共6)
    	单地址指令为操作码20位+地址12位,对于每个操作码,能够表示的指令从xxxx xxxx 0000 0000 0000~xxxx xxxx 1111 1111 1111(0~4095,共4096),x表示操作码
    	
    	因此,总共还能表示4096×6=24576个单地址指令
    
    	计算表示:(2^32 - 250 * 2^12 * 2^12) / 2^12 = 24576
    	总共表示2^32个数,一个地址位能表示2^12个地址,两个地址位2^24个地址
    	除去所有双地址,还剩2^32-250×2^24个指令,这些指令只有一个地址,共2^12种
    	(转义码数量×地址总数=所有情况)
    	因此最后是(2^32 - 250 * 2^12 * 2^12) / 2^12 = 24576条指令
    

    展开全文
  • 4.3 指令操作码扩展

    千次阅读 2021-10-03 21:15:29
    4.3 指令操作码的扩展4.3.1操作码的编码方式4.3.2 扩展操作码技术4.3.3 指令扩展的要点 4.3.1操作码的编码方式 指令操作码的长度决定了指令系统中完成不同操作的指令条数。设操作码有n位,则指令条数最多为2n条。 1....
  • 计算机组成原理------扩展操作码

    千次阅读 多人点赞 2019-07-12 21:09:08
    首先,需要建立的一种直观的认知是:既然是扩展操作码,就意味着操作码的位数越变越多! 之所以这么强调,是因为常常混淆了操作码的扩展方向。 再看扩展的原理: 假设指令字长是16位,平均劈开成4份,高位4位用作...
  • 扩展操作码的总结

    万次阅读 多人点赞 2016-10-01 13:51:55
    需要建立的一种直观的认知是:既然是扩展操作码,就意味着操作码的位数越变越多! 之所以这么强调,是因为常常混淆了操作码的扩展方向。再看扩展的原理: 假设指令字长是16位,平均劈开成4份,高位4位用作操作码,...
  • 扩展操作码

    千次阅读 多人点赞 2018-01-24 09:20:33
    需要建立的一种直观的认知是:既然是扩展操作码,就意味着操作码的位数越变越多!  之所以这么强调,是因为常常混淆了操作码的扩展方向。 再看扩展的原理:  假设指令字长是16位,平均劈开成4份,高位4位用作操作...
  • 如何设计扩展操作码--应用

    千次阅读 多人点赞 2016-10-01 14:44:04
    在下面这一篇讲过一点点基础原理。 ... 光说没用,以实例求证。 假设指令字长是16位,操作数的地址码是6位,指令有0地址,一地址,二地址三种。... 1)设固定操作码,若0地址指令有M种,一地址指令有N种,则二地址指
  • 某计算机的单字长指令为16位,采用扩展操作码方式,每个地址码4位,三地址指令15条,二地址指令8条,一地址指令127条,零地址指令(A)条? A.16 B.15 C.31 D.32 解答: 按照三地址-二地址-一地址-零地址的顺序进行...
  • 指令操作码扩展2.1 为什么需要对操作码进行扩展2.2 如何扩展 1. 指令 指令是计算机执行某种操作的命令,一条指令中包括: 操作码 操作数地址 操作结果的存储地址 下一条指令的地址 下面详细说明指令的格式: 一...
  • 计算机组成原理作业题5

    千次阅读 2021-07-16 00:13:02
    A、操作码长度可变 B、使用频率高的指令采用短操作码 C、使用频率低的指令采用短操作码 D、满足整数边界原则 8、某指令系统指令长为8位,每一个地址码3位,用扩展操作码技术。若指令系统具有2条二地址指令,10条零...
  • 完全的哈夫曼编码是最优化的编码。但是这种编码的码长种类太多。如上表,7种指令就出现了4种码长,长度有1有2有3有5,不规整,不易于编码。为此,结合用一般的二进制编码,在哈夫曼编码的基础上进行扩展
  • 指令系统4.1 指令系统的基本概念4.1.1 指令的基本格式1) 四地址指令2) 三地址指令3) 二地址指令4) 一地址指令5) 零地址指令4.1.2 定长操作码指令格式4.1.3 扩展操作码指令格式4.1.4 多字长指令格式4.1.5 指令格式的...
  • 然而支持64位扩展技术的IA-32处理器将用少于64位地址来实现寄存器扩展后,可以使用新的操作码前缀来访问(REX)现有的通用寄存器被加宽到64位(RAX, R
  • 操作码

    万次阅读 2018-01-04 17:56:56
    操作码
  • 一 知识点 1、一台计算机只能执行自己指令系统中的指令,不能执行其他系统的指令。 2、 指令字长:一条指令的总...5、PC存放当前欲执行指令的地址,而指令的操作码则保存操作数地址。 6、特权指令是指仅用于操作..
  • 指令操作码扩展

    万次阅读 多人点赞 2014-08-26 19:01:01
    题一 某计算机指令字长为16位,指令有双操作数、单操作数和无操作数3种格式,每个操作数字段均用6位二进制表示,该指令系统共有m条(m  A.2^6 B.(2^4-m)*(2^6)-1  C.(2^4-m)*2^6 D.(2^4-m)*(2^6-1) ...
  • 计算机组成原理第七章

    千次阅读 2019-06-13 22:59:26
    采用扩展操作码技术,若二地址指令8种,零地址指令有64种,则一地址指令最多有___种。 得分/总分 A. 342 B. 511 C. 512 0.00/1.00 D. 255 正确答案:B你错选为C 解析:B、教材例7.1...
  • 扩展操作吗方法

    千次阅读 2017-09-21 13:14:38
    需要建立的一种直观的认知是:既然是扩展操作码,就意味着操作码的位数越变越多!  之所以这么强调,是因为常常混淆了操作码的扩展方向。 再看扩展的原理:  假设指令字长是16位,平均劈开成4份,高位4位用作...
  • 扩展码再思考

    千次阅读 2016-12-06 16:47:48
    扩展码再思考@(组成原理)之前有总结过比较规整的...同时强调了扩展码要抓住操作码位数扩大的方向,同时是地址减少的方向。可以类比IP地址子网划分时,子网号扩大,则主机号变少。本质都是在有限字长上的二进制计算。...
  • 2.寻址技术 3.指令集操作分类 CISC 弊端: 指令集过于庞杂。 使用微程序技术降低了机器的处理速度。 指令系统过于庞大。 完善的中断控制导致动作繁多,设计复杂,研制周期长。 给芯片设计带来困难。 RISC ...
  • 指令格式之操作码地址码

    万次阅读 多人点赞 2020-04-14 06:24:21
    指令格式之操作码地址码 一、指令格式 指令:操作码字段 地址码字段 指令字(简称指令):表示一条指令的机器字。 指令格式:是指令自用二进制代码表示的结构形式,由操作码字段和地址码字段组成。 操作码字段:表征...
  • 【计算机组成原理】指令系统

    千次阅读 2021-12-05 14:09:05
    指令由操作码和地址码两部分构成 指令的字长:一条指令的长度是多少,分固定字长、可变字长 指令的一般格式: 1. 操作码 操作码用来指明该指令索要完成的操作或是对什么样的数据操作,如加法、减法、传送、...
  • Java字节增强技术

    千次阅读 2022-02-12 23:39:07
    Java字节增强技术:JDK、CGLib、ASM、AspectJ、Javassist
  • 条形扫描技术

    千次阅读 2017-04-26 09:44:24
    转发学习 ...条形阅读器是一种电子装置,阅读印刷条码.就像一个平台扫描仪,它包括一个光源,一个镜头和...条形的扫描需要扫描器,扫描器利用自身光源照射条形,再利用光电转换器接受反射的光线,将反射光线的
  • Java 字节指令是 JVM 体系中非常难啃的一块硬骨头,我估计有些读者会有这样的疑惑,“Java 字节难学吗?我能不能学会啊?” 讲良心话,不是我谦虚,一开始学 Java 字节和 Java 虚拟机方面的知识我也感觉头大!...
  • Kotlin系列之扩展函数

    万次阅读 2018-04-17 00:22:18
    简述: 今天带来的是Kotlin浅谈系列的第五弹,这讲主要是讲利用Kotlin中的扩展函数特性让我们的代码变得更加简单和整洁。扩展函数是Kotlin语言中独有的新特性,利用它可以减少很多的样板代码,大大提高开发的效率;...
  • 全网最新最全的 HDFS 文件纠删码技术分析

    万次阅读 多人点赞 2021-06-03 22:05:44
    前言 本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区...通过结合 RAID 的 纠删(Erasuredcode)技术,存储成本从原来的 HDFS 默认的3倍降低到1.4倍。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 286,179
精华内容 114,471
关键字:

扩展操作码技术

友情链接: 6037414.rar