2014-10-14 2 views
0

MIPS에서 배열에 대한 숫자 입력을 가져 오려고하지만 사용자가 -1을 입력하면이를 중지하려고합니다. 나는 'beq'을 사용해야 만한다는 것을 알고 있지만 어떻게 이해할 수는 없다. 예 : 1 2 3 4 5 6 -1-1에서 MIPS 입력을 중단하는 방법은 무엇입니까?

나는 MARS에서 일하고 있습니다.

답변

1

(MARS의 경우) beq $s, imm, LABEL$s == imm 인 경우 LABEL (으)로 이동한다는 것을 의미합니다. 사용자 입력을 요구하는 루프가 있어야합니다. 이 루프 외부에서 LABEL으로 분기하면됩니다.

0

대부분의 어셈블러 언어는 입력 값을 알려진 값과 먼저 비교 한 다음 결과가 0 일 경우 점프 (즉, 동일 함 비교)해야합니다. MIPS 물건의 많은 수업 내용 경향이하고 찾기 :-) 작품의 일부 자신을 을 일을해야하기 때문에 의사 ASM에서의

loop: 
    ; input number here into r7 

    cmp r7, -1  ; compare it with -1 
    beq exit_loop ; if equal, exit loop 

    ; use r7 here 

    bra loop  ; go get next number 

exit_loop: 
    ; carry on 

:

그래서 뭔가를 할 것이다 동등한 지시는 비교적 쉬워야한다.