文档详情

指令格式设计举例.ppt

发布:2017-05-29约3.31千字共22页下载文档
文本预览下载声明
指令格式设计举例 * 综合题 1、若某计算机数据线、地址线均是8bit,有一条相对寻址的无条件转移指令存于内存的20H单元中,指令给出的位移量D,设该指令占用2个字节,试计算: (1)取该指令时PC的内容。 (2) 该指令执行时PC的内容。 答: (1)取该指令时PC的内容为20H (2)转移地址=PC+2+D0000001000110111B 2、假设(R)=1000,(1000)=2000,(2000)=3000,(PC)=4000,问在以下方式中,访问到的操作数的值是什么? (1)寄存器寻址 R DATA=(R )=1000 (2)寄存器间接寻址 DATA=((R)) =(1000)=2000 (3)直接寻址 1000 DATA=(1000) =2000 (4)存储器间接寻址 (1000) DATA=((1000))=(2000) (5)相对寻址 -2000 EA=(PC )-2000=2000 DATA=(EA)=(2000)=3000 (6)立即数寻址 #2000 DATA=2000 3、某台计算机的指令系统中共有50条指令,试问: (1)若采用固定长度编码方式,其操作码的变码长度需要多少位? (2)设该指令系统中有10条指令的使用概率为90%,其余指令为10%,若采用不等长编码方式,其操作码的平均长度为多少? (3)若原指令系统采用固定长度编码,后继产品中需增加50条指令,试设计器指令操作码,并计算器平均长度。 解: (1)采用固定长度编码方式,其操作码的变码长度需要6位,即从000000—110001 (2)采用不等长编码方式,常用的指令用4位,编码表示,即从0000—1001,其余用7位编码,即从1010000---1110111。平均长度=4*90%+7*10%=4.3 (3)若原指令系统采用固定长度编码,后继产品中需增加50条指令,其操作码的变码长度需要6位,即从000000—110001。新增指令采用8位编码,即 3、某指令系统字长16位,每个操作数的地址码长6位.设系统有双操作数指令,单操作数指令和无操作数指令3类.若单操作数指令有M条,无操作数指令有N条,问双操作数指令最多有多少条? 解:因指令总长度为16位,操作数地址为6位,则 双操作数指令的操作码长度为(16-6×2)=4位 单操作数指令的操作码长度为(16-6)=10位 零操作数指令的操作码长度为16位 设双操作数指令最多有X条.则三类指令的操作码范围: 双操作数指令的操作码范围: 0000~(X-1) 单操作数指令的操作码范围: X?000000 ~X?(M-1) 零操作数指令的操作码范围: X?M?000000 ~X?M?111111 N=((24-X)×26-M)×26 X=24-(N/26+M)/26 某台计算机字长16位,主存容量为64K,采用单字长单地址指令,共有64 条指令。请用四中寻址方式(直接、间接、变址、相对)设计指令格式。 64条指令占用操作码(OP)字段6位,寻址方式(X)4种,需2位,剩余8位为位移量(D) X=00 直接寻址 有效地址E=D(256单元) X=01 直接寻址 有效地址E=(D)( 64K) X=10 直接寻址 有效地址E=D+(R) 64K) X=11 直接寻址 有效地址E=D+(PC)( 64K) D X OP 15 10 9 8 7 0 设有一台计算机,其指令长度为16位,指令格式如下: D M R OP 15 11 10 8 7 6 5 0 其中,OP为操作码,占5位,R为寄存器编号,占3位,可有8个寄存器;M为寻址方式,占2位,与D一起决定元操作数,规定如下: MM=00,为立即寻址,D为立即数; MM=01,为相对寻址,D为位移量; MM=10为变址寻址,D 为位移量; 假定要执行的指令为加法指令,存放在001000单元中,D的值为01,该指令执行前存储器和有关寄存器的存储情况如下入所示,其中地址码和数据时八进制表示. 002016 002006 …… 001250 001150 001050 000 001000 001001 001002 001003 002001 002002 001002 000015 变址寄存
显示全部
相似文档