我试图编写一个ASM,它使用逻辑右移来移动字节,而不破坏末端的字节,而是将它们旋转到前端。本质上,我试图模拟ror指令,而不是专门使用该指令。
我知道右移位指令会自动将剩余空间替换为0,但是否有可能更改该值?
.data
InArr: .word 0xe0000000
OutArr: .word 0
.text
.global main
main:
lw $s2, InArr
lw $s3, OutArr
loop:
#ror $s2, $s2, 4
srl $s2, $s2, 4
sw $s2, InArr
bne $s2, $s3, loop
syscall
在这种情况下,代码将一直运行,直到“e”一直向右移动为止。