2013-11-02 3 views
2

문자열의 첫 번째 문자를 '#'문자와 비교하려고합니다. 이 값이 같다면 나는 "그들은 밉"이라고 인쇄하고 싶다. 이렇게하기 위해 아래 코드를 작성했습니다. 그러나 평등하다고해도 결과는 나에게주지 못합니다. 나를 도울 사람이 있습니까? 미리 감사드립니다. 문자열의 첫 번째 문자를 액세스하고이를 문자와 비교 MIPS

.data 
input:   .space 201 
string2: .asciiz "they're equal.\n" 
finish:   .byte '#' 
.text 
main: 
     la $a0,input 
     li $a1,201   #read 200 char 
     li $v0,8   #read string 
     syscall 

     jal evaluate 

evaluate: 
     lw $t1, 0($a0) 
     lw $t2,finish 
     beq $t1,$t2,testi 

testi: 
     la $a0,string2 
     li $v0,4 
     syscall 

     li $v0, 10 
     syscall 

답변

1

예, 지점을 가져 왔는지 여부에 관계없이 다음 명령이 동일하도록 지점을 배치했습니다.

은 이런 식으로 변경하면 :

evaluate: 

     lw $t1, 0($a0) 
     lw $t2,finish 
     bne $t1,$t2,testi 

     la $a0,string2 
     li $v0,4 
     syscall 

test1: 
     li $v0, 10 
     syscall