文章

16

粉丝

42

获赞

14

访问

4.9k

头像
2025年计算机学科专业基础综合试题 - 第44题回答
计算机组成原理
发布于2025年10月16日 12:12
阅读数 603

问题1解答

• R、Q、Y的初始值:

◦ 由指令流程可知,x在R2(x=0xff,即0xFFFFFFFF),d[i]在R1(d[i]=0x87654321)。补码除法中,余数寄存器R和商寄存器Q拼接为64位,初始时R存放被除数的高位(符号扩展后的x),Q存放被除数的低位(这里x是32位,故Q初始为0);除数寄存器Y存放除数d[i]。

◦ 因此,R = 0xFFFFFFFF(x的符号扩展,32位),Q = 0x00000000,Y = 0x87654321。

• 包含计数器的部分:图中控制逻辑计数器Cn包含计数器。

• ALUop控制的ALU运算:补码除法执行过程中,ALU需进行**减法(用于比较余数与除数的大小)和加法(用于恢复余数等操作)**两种运算。

问题2解答

• 除法异常的情况及机器数:

◦ 除数为0:若d[i] = 0x00000000,x为任意值(如x=0xFFFFFFFF),此时触发除数为0异常。

◦ 溢出:当被除数为0x80000000(最小负整数),除数为0xFFFFFFFF(-1)时,x=0x80000000,d[i]=0xFFFFFFFF,此时商超出32位补码表示范围,触发溢出异常。

• 异常响应过程中CPU的操作:

1. 保存当前程序状态(如PC、寄存器值等)。

2. 跳转到异常处理程序入口地址执行。

3. 处理完异常后,根据情况恢复现场并继续执行或终止程序。


评分及理由

(1)得分及理由(满分4分)

得分:1分

理由:

  • 学生正确指出图中控制逻辑包含计数器,得1分。
  • 学生正确指出ALUop控制的运算包括加法和减法,得1分。
  • 但R、Q、Y的初始值计算有严重错误:
    • 根据指令流程,执行idiv前经过scov指令,{R0,R1} = SEXT(R1) = SEXT(0x87654321) = 0xFFFF FFFF 8765 4321(64位符号扩展),其中R0存放高32位0xFFFFFFFF,R1存放低32位0x87654321。
    • 补码除法器初始时,R应存放被除数高32位(即R0的值0xFFFFFFFF),Q应存放被除数低32位(即R1的值0x87654321),Y...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发