exception - mips异常处理beq无法正常工作

标签 exception error-handling exception-handling mips

我正在尝试通过比较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

最佳答案

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

关于exception - mips异常处理beq无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42985623/

相关文章:

java - 关于 `Variable (var-name) might not have been initialized`

java - 在 Swing GUI 中处理异常

安卓套接字异常 "socket is closed"

java - 除了异常堆栈跟踪中的行号之外,还包括源列号

c# - 获取对其构造函数抛出异常的实例的引用

validation - 带有字段的 Grails NumberFormatException 或 GroovyCastException,导致它

java - 为什么我需要 "throws Exception"?

error-handling - 订阅者点击时发生 fatal error #

sql - Oracle 中的异常处理

javascript - JavaScript 中的条件错误处理