预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共24页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

指令系统3. 指令字长:7.1.2节(P304) 机器字长:1.3.1节(P17) 存储字长:P13 4.解: 零地址指令的操作数的地址隐含在堆栈指针SP中(P303) 一地址格式的另一个操作数通常可采用隐含寻址。举例参照P312. 5.解:二地址指令操作数的物理地址用地址码给出,可以是主存的地址,也可以是寄存器的地址,甚至可以是I/O设备的地址。(P302)6.某指令系统字长为16位,地址码取4位,试提出一种方案,使该指令系统有8条三地址指令、16条二地址指令、100条一地址指令。解:三地址指令格式如下:44444位OP0000,……,A1,A2,A3;8条三地址指令0111,1000,0000,……,……,A2,A3;16条二地址指令1000,1111,1001,0000,0000,……,……,……,A3;100条一地址指令1001,0110,0011,1001,0110,0100,……,……,……,冗余编码1001,1111,1111,可用来扩充一、零地址指令条数1010,……,冗余编码1111,可用来扩充三、二、一、零地址指令条数7.设指令字长为16位,采用扩展操作码技术,每个操作数的地址为6位。如果定义了13条二地址指令,试问还可安排多少条一地址指令?解:二地址指令格式如下:4668.某机指令字长16位,每个操作数的地址码为6位,设操作码长度固定,指令分为零地址、一地址和二地址三种格式。若零地址指令有M种,一地址指令有N种,则二地址指令最多有几种?若操作码位数可变,则二地址指令最多允许有几种?解:1)若采用定长操作码时,二地址指令格式如下:466设二地址指令有K种,则:K=24-M-N当M=1(最小值),N=1(最小值)时,二地址指令最多有:Kmax=16-1-1=14种2)若采用变长操作码时,二地址指令格式仍如1)所示,但操作码长度可随地址码的个数而变。此时,K=24-(N/26+M/212);(N/26+M/212向上取整)当(N/26+M/212)1时,K最大,则二地址指令最多有:Kmax=16-1=15种(只留一种编码作扩展标志用。)讨论:此时,一地址指令条数为:N=(24-K)×26-M/26;(M/26向上取整)。零地址指令条数为:M=216-212K-26N;当K最大时(K=15),一地址指令最多有:Nmax=64-1=63种;零地址指令最多有:Mmax=64种注意:应首先根据题意画出指令基本格式。13.画出执行“ADD*-5”指令(*为相对寻址特征)的信息流程图。设另一个操作数和结果存于ACC中,并假设(PC)=4000H。解:由于本题未指定数据通路结构,因此只能大概地排一下信息流程图,并且流程图中突出寻址过程的实现。ADD*-5指令信息流程图如下:14.设相对寻址的转移指令占两个字节,第一个字节是操作码,第二个字节是相对位移量,用补码表示。假设当前转移指令第一字节所在的地址为2000H,且CPU每取出一个字节便自动完成(PC)+1PC的操作。试问当执行“JMP*+8”和“JMP*-9”指令时,转移指令第二字节的内容各为多少?解:据题意,相对寻址的转移指令格式如下:当取出JMP指令时,PC的内容变为2002H。此时转移指令第二字节内容各为:A1=00000110=06H(6)A2=11110101=F5H(-11)执行JMP后PC各为:EA1=200AHEA2=1FF7H请参考课件上的例子。15.解:+35-3=20H-17-3=ECH 当取出JZ指令时,PC的内容变为4003H。由于数据在存储器中采用以高字节地址为字地址的存放方式故此时转移指令第二、三字节内容各为:00H20H FFHECH16.某机主存容量为4M16位,且存储字长等于指令字长,若该机指令系统可完成108种操作,操作码位数固定,且具有直接、间接、变址、基址、相对、立即等六种寻址方式,试回答以下问题。(1)画出一地址指令格式并指出各字段的作用。(2)该指令直接寻址的最大范围。(3)一次间接寻址和多次间接寻址的寻址范围。(4)立即数的范围(十进制表示)。(5)相对寻址的位移量(十进制表示)。(6)上述六种寻址方式的指令中哪一种执行时间最短,哪一种最长,为什么?哪一种便于程序浮动,哪一种最适合处理数组问题?(7)如何修改指令格式,使指令的寻址范围可扩大到4M?(8)为使一条转移指令能转移到主存的任一位置,可采取什么措施?简要说明之。解:(1)单字长一地址指令格式:736(2)A为6位,该指令直接寻址的最大范围为26=64字;(3)一次间址的寻址范围为216=64K字;多次间址的寻址范围为215=32K字;(4)立即数的范围:若采用补码表示为1FH~20H;十进制表示为-32~+31;无符号数为0~63;(5)相对寻址的位移量范围在