在地址上的Mips空白区域

时间:2017-04-23 16:49:29

标签: ascii mips

所以我有一串字符。我需要检查一个字符是否为空格“”/ ascii 32.如何给出一个空格的ascii值的地址,以便我可以在if / else中使用它?

.data 
userInput: .space 40
.text
main:
li $v0, 8
la $a0, userInput
li $a1, 40
syscall

li $t1,0
    la $t0,userInput

loop:

li $a3, 32 #can i give this address 32 ascii value?
lb   $a0,0($t0)
beqz $a0,done
addi $t0,$t0,1 #going true the characters
bne  $t0, $a3, L1    # branch if ! ( char == ' ' ) 
addi $t1,$t1,1 #add blank space
L1: addi $t2,$t2,1 #add characters  
j     loop
done:

li   $v0,1
addi $t1, $t1, -1
add  $a0, $0,$t1
syscall

li $a0, 32
li $v0, 11  
syscall

li   $v0,1
addi $t2, $t2, -1
add  $a0, $0,$t2
syscall


li   $v0,10
syscall

1 个答案:

答案 0 :(得分:2)

.data   

         blankSpace: .ascii  " "

.text
 main:

         la $a3, blankspace
         lb $t3,0($a3)

另外,您可以直接在ASCII表中加载space的{​​{1}}的ASCII值。

0x20