Transcript 计算机硬件基础课件
计算机硬件基础 计算机硬件基础(下) 2011年重修习题 主讲 杨全胜 http://www.njyangqs.com/ 东南大学 1 软件学院 计算机学院 http://www.njyangqs.com/ 计算机硬件基础 已知一个在内存中的堆栈,采用自底向下的 操作方式,栈底在2000H的地方,现在空栈的情 况下,做3次压栈,一次出栈后,问SP的值是多 少? 2 http://www.njyangqs.com/ 计算机硬件基础 在一个36位指令字长的指令系统中,设计出 能够同时满足下列3个要求的指令扩展操作码: 1)7条具有两个15位地址和一个3位地址的指令。 2)500条具有1个15位地址和一个3位地址的指令 3)50条无地址指令 3 http://www.njyangqs.com/ 计算机硬件基础 某计算机指令字长为16位,地址码为6位, 指令系统只有一地址和二地址两种指令格式, 设共有N条二地址指令,请问一地址指令共有多 少条? 4 http://www.njyangqs.com/ 计算机硬件基础 某计算机指令字长为20位,具有双操作数、 单操作数和无操作数3种指令格式,每个操作数 的地址码为6位。若现已设计出m条双操作数指 令,n条无操作数指令,问此时做多能设计出多 少条单操作数指令? 5 http://www.njyangqs.com/ 计算机硬件基础 某机器的指令字长为24位,有32个通用寄 存器,16种寻址方式。已知所有指令的操作数 都在寄存器中。 (1)设计单操作数指令的指令格式,单操作数 指令最多有多少条? (2)设计双操作数指令的指令格式,双操作数 指令最多有多少条? (3)要求支持62条双操作数指令,还能支持多 少条单操作数指令? 6 http://www.njyangqs.com/ 计算机硬件基础 设相对寻址的转移指令占4个字节,最高字节 为操作码,值为2EH(16进制),低三个字节为相 对位移量(补码表示),小端存储法。请回答下列 问题,其中2)、3)要求给出计算过程。 1)该指令跳转的地址范围为多少? 2)若该指令的地址为170(10进制数),要求转 移到5420(10进制),则移位指令的机器码是多 少?请用16进制表示。 3)若该指令的地址为9332(10进制数),要求转 移到780(10进制),则移位指令的机器码是多少? 请用16进制表示。 7 http://www.njyangqs.com/ 计算机硬件基础 已知一个CPU结构如图1,该系统有以下指令: 8 http://www.njyangqs.com/ 计算机硬件基础 1)LW R7, R6(R5) ; 该指令完成 R7 <- MEM(R6+R5) 2)ADD R9, R6 ; 该指令完成 R9 <- R9+R6 3)ADC R9,R6; 该指令完成 R9 <- R9+R6+CY 4)MOV R3,R2; 该指令完成 R3 <- R2 5) LW R1, R3 (R2) ;该指令完成 R1<- MEM(R2+R3) 6) SW R1, (R2) ;该指令完成 MEM(R2) <- R1 7) ANDI R1, R2,57 ; 该指令完成 R1 <- R2 AND 57 8) JAL R1 ; 跳转到PC+R1处,并将PC的值保存到R31 9)J 5000 ; 跳转到5000 请写出以上9条指令的控制序列。 9 http://www.njyangqs.com/