指令系统测试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、设某计算机为定长指令字结构,指令字长为12位,每个地址码3位,试提出一种分配方案,使指令系统包含:4条三地址指令,8条二地址指令,180条单地址指令。
2、某计算机字长为16位,主存储器容量为64K字,指令格式为单字长单地址,共64条指令。试说明:
(1)若只采用直接寻址方式,指令能访问多少主存单元。
(2)为扩大指令寻址范围,可采用直接/间接寻址方式,若仅增加一位直接/间接标志,指令可寻址范围为多少?指令直接寻址的范围为多少?
3、指令格式如下图所示,OP为操作码字段,试分析指令格式特点。
31 26 21 18 17 16 15 0
4、某计算机字长为16位,主存容量为640K字,采用单字长单地址指令,共有80条指令。试用直接、间接、变址、相对四种寻址方式设计指令格式。
1解:
由题意可知,当指令为三操作数时,操作码的位数为12 –3×3 = 3,共23= 8 种编码。现使“000~011”为四条三地址数指令的编码,“100~111”四个编码把一个地址码(三位)扩展为操作码。
用四个扩展编码中的“100”把一个地址码(三位)扩展为操作码,共有23= 8 种编码“100000~100111”为八条二地址数指令的编码,其余3×23 = 24 种编码把一个地址码(三位)扩展为操作码。
用24 种编码把一个地址码(三位)扩展为操作码,共有24×23 =184种编码,用其中的180个编码为180条一地址数指令的编码。
2解:
64条单地址指令,指令字长16位,其中操作码(64 = 26)6位,地址码10位。
①采用直接寻址,能访问210 = 1024个主存单元。
②当间接寻址时,地址码可达16位,寻址范围为216 = 64K;直接寻址时地址码为9位(其中有一位要用作寻址标志),寻址范围为29 = 512。
3解:
(1)操作码字段为6位,可指定26= 64种操作,即64条指令。
(2)单字长(32位)二地址指令。
(3)一个操作数在源寄存器(共有16个),另一个操作数在存储器中(由变址寄存器内容+偏移量决定),所以是RS型指令。
4解:
80条指令操作码字段(OP)需要7位,4种寻址方式(X)需要2位,形式地址(D)为16-7-2=7位,则指令格式如下:
寻址方式定义为:
X=00 直接寻址有效地址为:EA=D,寻址范围为27=128
X=01 间接寻址有效地址为:EA=(D),寻址范围为216=64K
X=10 变址寻址有效地址为:EA=(R)+ D(27)
X=11 相对寻址有效地址为:EA=(PC)+D(27)
其中R为变址寄存器(16位),PC为程序计数器(16位),在变址和相对寻址时,可采用交错相加的方式来产生有效地址,其最大的寻址空间可达216+7=223〉640K,故满足题目要求。