2025年(408)计算机学科专业基础综合试题 - 第44题回答
(1)
第一问:
补码除法器中寄存器R的初始内容是:87654321H
补码除法器中寄存器Q的初始内容是:00000000H
补码除法器中寄存器Y的初始内容是:000000FFH
第二问:
图中控制逻辑包含计数器。
第三问:
在补码除法器执行过程中,由ALUop所控制的ALU算法有补码加法,取反码。
(2)
第一问:除数为0时会发生除法异常,此时d[i]=87654321H,x=00000000H
第二问:发生除法异常时,在异常响应阶段中CPU需要关中断,保护断点,给出中断向量表的地址。
评分及理由
(1)得分及理由(满分6分)
得分:1分
理由:
- 第一问:学生给出的R、Q、Y初始值全部错误。根据题目,idiv指令执行前,scov指令已将R1符号扩展为64位,高32位在R0,低32位在R1。除法运算时,被除数应为64位的{R0, R1},除数R2为32位。因此,初始时,R应存放被除数的高32位(R0),Q应存放被除数的低32位(R1),Y应存放除数(R2)的符号扩展值(32位)。已知d[i]=0x87654321(负数),符号扩展后R0=0xFFFFFFFF,R1=0x87654321;除数x=0xFF(正数),符号扩展后Y=0xFFFFFFFE(因为补码除法中,除数Y通常取除数的补码,即-Y,用于后续的加减运算,标准答案中Y为0xfffffffe也印证了这一点)。学生答案(R:87654321H, Q:00000000H, Y:000000FFH)与正确值完全不符,扣3分。
- 第二问:学生正确指出“控制逻辑包含计数器”,得1分。
- 第三问:学生回答“补码加法,取反码”不完整且表述不准确。ALUop控制的运算主要是加法和减法(用于执行补码除法中的加减除数操作)。学生未提及减法,且“取反码”通常不是ALU的基本运算,而是通过其他操作(如取反加1)实现。此部分回答不准确,扣2分。
(2)得分及理由(满分5分)
得分:2分
理由:
- 第一问:学生仅答出“除数为0”一种异常情况(d[i]任意,x=0x00000000),得1分。但未答出第二种“溢出异常”情况(当被除数为最小负数-2^31且除数为-1时,即d[i]=0x80000000, x=0xffffffff),扣2分。此外,学生在描述除数为0...
登录后发布评论
暂无评论,来抢沙发