我正在一个项目中,我需要获取十六进制值中包含的值并将其拆分。我将有一个包含值0xAA00BBCC的寄存器,需要将其拆分为3个不同的整数,AA,BB和CC
例如:
如果值是:0x88000232,我需要将其拆分为3个整数: 答:88, B:02, 和C:32。
我该怎么做?
答案 0 :(得分:0)
结合使用SRL和ANDI,但有时不需要其中之一。例如:
srl $t0, $a0, 8
andi $t0, $t0, 0xFF
这将移位值,以使BB从0xAA00BBCC处在底部(0x00AA00BB),然后andi
重置不属于该BB部分的位。
当班次计数为24时,不需要andi
。当然,移位0位置是没有用的,因此在这种情况下,只需要andi
。