若某计算机要求有如下形式的指令,交大计算机组成原理-第4章.ppt

本文档讨论了计算机指令系统的不同方面,包括固定长度和可变长度操作码的优缺点,以及如何根据指令使用频率进行不等长编码设计以提高编码效率。还介绍了指令的格式、指令分类,如数据传送、算术运算和程序控制,并展示了如何为不同类型的指令分配操作码和地址码。此外,还探讨了堆栈操作和程序流控制指令的应用。
摘要由CSDN通过智能技术生成

文档介绍:

第四章指令系统2020/3/224.1指令与指令系统 4.1.1指令的格式指令格式:操作码,地址码一、操作码 固定长度操作码:便于译码,扩展性差 可变长度操作码:能缩短指令平均长度二、地址码 零地址指令,如NOP,CLR 一地址指令,如INCR1 二地址指令,如ADDR1,R2 三地址指令,如ADDR1,R2,R3寻址方式立即数2020/3/224-1设某台计算机有100条指令,(1)采用固定长度操作码编码,试设计其操作码的编码。(2)假如这100条指令中有10条指令的使用概率达到90%,其余90条指令的使用概率为10%。试采用不等长编码设计操作码。解:(1)采用固定长度操作码编码时,需要7位操作码。取其中的100个代码作为指令操作码,可以用0000000到1100011之间的代码代表100条指令,即 0000000 指令0的操作码 0000001 指令1的操作码 … 1100011 指令99的操作码剩下从1100100到1111111共28个代码可用于增加新指令,每条指令的操作码的长度都是7。2020/3/22(2)用4位代码对10条常用指令进行编码,用8位代码对90条不常用代码进行编码,即 0000 指令0的操作码 0001 指令1的操作码 … 1000 指令8的操作码 1001 指令9的操作码 10100000 指令10的操作码 10100001 指令11的操作码 … 11111001 指令99的操作码指令操作码的平均长度为 4×90%+8×10%=4.4位比等长编码的7位小。4-1设某台计算机有100条指令,(1)采用固定长度操作码编码,试设计其操作码的编码。(2)假如这100条指令中有10条指令的使用概率达到90%,其余90条指令的使用概率为10%。试采用不等长编码设计操作码。2020/3/22例4-2若某计算机要求有如下形式的指令:三地址指令12条,二地址指令60条,零地址指令16条(不要求有单地址指令)。设指令字长为16位,每个地址码长为4位,试用扩展操作码为其编码。解:三个地址码字段占12位。剩下4位作为操作码,12条指令的操作码分别为0000、0001、0010、…、1011。在双地址指令中,操作码扩展到8位,每个编码加上扩展的4位后,可以有24=16个编码,共有64个编码,取60个,即11000000~11111011。零地址指令中,全部16位指令代码都是操作码,取其前16个编码,即11111**********~11111**********。2020/3/224.1.1指令的格式三、指令长度固定长度:取指快、译码简单。单字长、双字长、多字长可变长度:可提高编码效率四、指令助记符 伪指令、累加器,通用寄存器ADDR1load2020/3/224.1.2指令分类数据传送:move,load,store算术运算:add,sub,mult,p逻辑运算:and,or,neg,shift程序控制:jump,branch,jsr,ret,int输入输出:in,out堆栈操作:push,pop字符串:如alpha中CMPBGE,INSWH,EXTBL系统指令:如奔腾2020/3/22程序流控制指令条件转移无条件转移绝对转移相对转移beq$1,$2,1000beq$1,$2,1000beq$1,$2,10002020/3/22堆栈操作——寄存器堆栈A0B1C232020/3/22堆栈及其实现——存储器堆栈2020/3/22

内容来自淘豆网www.taodocs.com转载请标明出处.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值