38、操作数的地址在寄存器中,为 寄存器间接 寻址方式。 39、操作数在指令中,为 立即 寻址方式。
40、操作数的地址在指令中,为 直接 寻址方式。
41、操作数的地址,为某一寄存器内容与位移之和,可以是相对、基址、变址 寻址方式。 42、形成操作数地址的方式,称为数据寻址方式。
43、操作数可放在专用寄存器、通用寄存器、内存和指令中。 44、指令字长分为: 单字长指令、半字长指令、双字长指令。
45、寻址过程就是把操作数的形式地址,变换成操作数的有效地址的过程。 46、单字长指令只有操作数,没有操作数地址。 47、双子长或三字长指令包含操作码和地址码。 48、指令系统是表征一台计算机性能的重要因素。
49、执行RS型指令时,既要访问内存单元,又要访问寄存器。
50、当采用地址指定方式时,形成操作数或指令地址的方式,称为寻址方式。分为指令寻址方式和数据寻址方式两类。
三、 应用题
1、若机器字长36位,采用三地址格式访存指令,共完成54种操作,操作数可在1K地址范围内寻找,画出该机器的指令格式。
1. 解:操作码需用6位,操作数地址码需用10位。格式如下
6 10 10 10 OP D1 D2
D3 OP:操作码6位
D1 :第一操作数地址,10位 D2 :第二操作数地址,10位 D3 :第三操作数地址,10位
2、指令格式如下所示,OP为操作码字段,试分析指令格式特点。
31 26 22 18 17 16 15 0 OP 源寄存器 变址寄存器 偏移量 解:(1)操作码字段为6位,可指定 26 = 64种操作,即64条指令。
(2)单字长(32)二地址指令。
(3)一个操作数在源寄存器(共16个),另一个操作数在存储器中(由变址寄 存器内容 + 偏移量决定),所以是RS型指令。 (4)这种指令结构用于访问存储器。 3、某机指令格式如图所示: OP X D 15 10 9 8 7 0
图中X为寻址特征位,且X=0时,不变址;X=1时,用变址寄存器X1进行变址;X=2时,用变址寄存器X2进行变址;X=3时,相对寻址。设(PC)=1234H,(X1)=0037H, (X2)=1122H,请确定下列指令的有效地址(均用十六进制表示,H表示十六进制) (1)4420H (2)2244H (3)1322H (4)3521H (5)6723H 解:(1)0020H (2)1166H (3)1256H (4)0058H (5)1257H
4、某计算机字长32位,有16个通用寄存器,主存容量为1M字,采用单字长二地址指令,共有64条指令,试采用四种寻址方式(寄存器、直接、变址、相对)设计指令格式。
解:64条指令需占用操作码字段(OP)6位,源寄存器和目标寄存器各4位,寻址模式(X)
2位,形式地址(D)16位,其指令格式如下:
31 26 25 22 21 18 17 16 15 0 OP 目标 源 X D 寻址模式定义如下: X= 0 0 寄存器寻址 操作数由源寄存器号和目标寄存器号指定 X= 0 1 直接寻址 有效地址 E= (D)
X= 1 0 变址寻址 有效地址 E= (Rx)+D X= 1 1 相对寻址 有效地址 E=(PC)+D 其中Rx为变址寄存器(10位),PC为程序计数器(20位),位移量D可正可负。该指令格式可以实现RR型,RS型寻址功能。
5、假设机器字长16位,主存容量为128K字节,指令字长度为16位或32位,共有128条指令,设计计算机指令格式,要求有直接、立即数、相对、基值、间接、变址六种寻址方式。
解:由已知条件,机器字长16位,主存容量128KB / 16= 64K字,因此MAR = 16位,共128条指令,故OP字段占7位。采用单字长和双字长两种指令格式,其中单字长指令用于算术逻辑和I / O类指令,双字长用于访问主存的指令。 15 9 5 4 3 2 1 0 OP R1 R2
15 9 8 6 5 3 2 0 OP X R2
D
寻址方式由寻址模式X定义如下: X = 000 直接寻址 E = D(64K) X = 001 立即数 D = 操作数
X = 010 相对寻址 E = PC + D PC = 16位 X = 011 基值寻址 E = Rb + D ,Rb =16 位 X = 100 间接寻址 E = (D)
X = 101 变址寻址 E = RX + D ,RX = 10位
6、指令格式如下所示,OP为操作码字段,试分析指令格式的特点。 15 10 7 4 3 0 源寄存器 基值寄存器 OP 位移量( 16 位) 解:(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP为6位,可以指定26 = 64种操作。 (3)一个操作数在源寄存器(共16个),另一个操作数在存储器中(由基值寄存器 和位移量决定),所以是RS型指令。