【问题标题】:mips exception handling beq not workingmips 异常处理 beq 不起作用
【发布时间】:2017-03-23 19:44:55
【问题描述】:

我试图通过比较 t0 值来查找异常。我比较 t0 值的十六进制数字一定有问题。有人知道吗?

sw $v0 save0

mfc0 $t0 $13
srl $t0 $0 2
andi $t0 $t0 0x7c

beq $t0 0x00000008 bad_address_load
beq $t0 0x0000000a bad_address_store
beq $t0 0x00000012 break_instruction
beq $t0 0x00000014 bad_instruction
beq $t0 0000000018 overflow
beq $t0 0x0000001a trap_instruction
j else

【问题讨论】:

    标签: exception error-handling exception-handling mips


    【解决方案1】:

    由于您已将 $t0 向右移动 2 位以获得位 4:0 中的 ExcCode,因此您用于 andi 的掩码应该是 0x1f。您在beq 中比较的立即数应该是 4, 5, 9, ... 而不是 8, 10, 18, ...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-06
      • 1970-01-01
      • 1970-01-01
      • 2016-03-18
      • 2019-05-20
      • 2011-03-03
      • 2021-12-05
      • 1970-01-01
      相关资源
      最近更新 更多