Ich habe 16 hexadezimale Werte, die ich versuche zu durchlaufen und isolieren die Bits bei b6, b2, b1, b0 das ist, wo ich die 0x47 von bekam.Mips Assembly Sprache isolierende Bits
.data
#dellares all 16 test cases hexadecimal values
testCases: .byte 0x0,0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47
#set size of array to 16
size: .word 16
NL: .asciiz "\n"
.text
main:
lw $s7, size
move $s1, $zero
move $s2, $zero
loop:
bge $s1, $s7, loop_end
lb $s0, testCases($s2)
andi $a0, $s0, 0x47
li $v0, 1
syscall
la $a0, NL
li $v0, 4
syscall
addi $s1, $s1, 1
addi $s2, $s2, 4
j loop
loop_end:
Dies gilt jedoch nicht das gewünschte Ergebnis auszudrucken, druckt es aus these results
als Sie für jede Hilfe