확인을 찾을 수 없습니다 질문은 다음과 같다 : 말 (MIPS 어셈블리 숙제. 버그
- 정수를 입력하라는 메시지를 표시,
- 키보드에서 정수를 읽습니다 : MARS를 사용하는 프로그램을 개발 n),
- 홀수와 짝수의 합을 계산하여 1 에서 n으로 출력합니다. 여기
는 가이 숙제를 해결하지 마십시오, 내 시도이다. 나는 내 실수에서 배우고 싶다. 내 질문 ---------------, 레지스터는 실행에게 그것을 -MAXINT로 이동하는 것 그리고 당신은 :(
# Assignment 3, part 1
# NAME
#The Formulas used in this assignments are visible in a text document
#attached in the zip. and their mathematical proofs.
# Odd or Even Checker by parity bit in binary format.
# by anding it with the number N
# if it is odd, the anding will result in 00000001
# if it is even the ANDing will result in all 0
# we can check if the result is ==0 or not
# then use mathematical formulas to derive the sums
# using the least number of instructions
# Without using the not-yet-learnt instructions.
를 볼 것이다, 내가 잘못 않은 곳이다 -------------------------------------------------- --------
.data #Data Declaration Section
msg1: .asciiz "Hello, Enter an Integer:\n->"
msgodd: .asciiz "Odd Sum is :\n"
msgeven: .asciiz "Even Sum is :\n"
.text
#START
la $a0, msg1 #Load the address of label msg1
li $v0,4 #Load int 4 to v0, and address the system call.
syscall
#Request a Syscall for integer input
li $v0,5 #Load int 5 <int inp>
syscall
move $a0,$v0 #copy the int entered
parity:
move $t0,$a0 #will be used to test for odd or even
move $a3,$a0 #will be used later
andi $t0,00000001 # this is the parity bit i talked about above.
beq $t0,$zero,even_n
#s1 hold odd sum, s2 hold even sum, t1 is temp for odd, t2 is temp for even
li $s5,1
odd_n:
move $t1,$a3
move $t2,$a3
addi $t2,$t2,-1
ol:
add $s1,$s1,$t1
addi $t1,$t1,-2
bne $t1,$s5,ol
el:
add $s2,$s2,$t2
addi $t2,$t2,-2
bne $t2,$zero,el
even_n:
move $t1,$a3
move $t2,$a3
addi $t1,$t1,-1
eol:
add $s1,$s1,$t1
addi $t1,$t1,-2
bne $t1,$s5,eol
eel:
add $s2,$s2,$t2
addi $t2,$t2,-2
bne $t2,$zero,eel
print:
li $v0,4
la $a0,msgodd
syscall
li $v0,1
move $a0,$s1
syscall
la $a0,msgeven
syscall
li $v0,1
move $a0,$s2
syscall
exit:
li $v0,10
syscall
귀하가 계산할 때 s1과 s2의 값을 인쇄하는 것이 좋습니다. –
또는 각 명령을 단계별로 실행하여 오류가 어디에서 발생하는지 확인하는 화성의 내장 기능을 사용하는 것이 더 좋습니다. – Wiz