Hello,
i have to build a program using assembly with mars system.
the progra...
Computers and Technology, 30.10.2019 01:31 cxttiemsp021
Hello,
i have to build a program using assembly with mars system.
the program is supposed to return a hailstone sequence
a)- get user input (integer) - n
b) check if even or odd
- if the input is even, the next number should n/2
- if the user's input (n*3)+1
c) reproduce the operation on the next number until the number is equal to 1
d) display the sequence
e) count and display the number of iterartion
i have the user input done, and then, i tried to do a bitwise operation using and to see if the number is even or not but the program doesn't work after the user's input, as i have an output equal to zero
can you me ?
here is my code so far
.data
prompt: .asciiz "enter an integer: "
message1: .asciiz "you entered an even number"
message2: .asciiz "you entered an odd number"
message3: .asciiz "and the next numbers should be: "
gototheline: .asciiz "\n"
message4: .asciiz "you just entered the number: "
.text
main:
#print the prompt
li $v0,4
la $a0,prompt
syscall
#get the user's input
li $v0,5
syscall
#store the input'svalue
move $t3, $v0
#display the user's input message
li $v0,4
la $a0,message4
syscall
#go to the line
li $v0,4
la $a0,gototheline
syscall
#print value entered by user
li $v0,1
move $a0, $t3
syscall
#go to the line
li $v0,4
la $a0,gototheline
syscall
#bitwise operation on the input
and $a0,$0,1
#call odd function if number is odd
beq $a0,1,ifodd
#print next number message
li $v0, 4
la,$a0,message3
syscall
#go to the line
li $v0,4
la $a0,gototheline
syscall
#print result
li $v0,1
addi $a0,$v1,0
syscall
li $v0,10
syscall
ifeven:
#print message if even
la $a1,message1
syscall
#call the function operation even to do math on the number entered by user
jal operationeven
ifodd:
#print message if odd
la $a2,message2
syscall
#call method to do math on the number entered by user
jal operationodd
operationeven:
#if even n/2
div $v1,$t3,2 # return value on $v1
jr $ra #go back to the main
operationodd:
#multiply by 3
mul $t1,$t3,3
#add 1 to the result of the multiplication
add $v1, $t1,1 #return value on $v1
jr $ra #go back to the main
Answers: 1
Computers and Technology, 24.06.2019 09:30
Retype the statements, correcting the syntax errors. system.out.println("num: " + songnum); system.out.println(int songnum); system.out.println(songnum " songs"); note: these activities may test code with different test values. this activity will perform two tests: the first with songnum = 5, the second with songnum = 9. see how to use zybooks.
Answers: 1
Computers and Technology, 24.06.2019 10:30
This device directs network traffic. bridge hub nic repeater router switch
Answers: 3
Computers and Technology, 24.06.2019 11:00
In three to five sentences, describe how you can organize written information logically and sequentially
Answers: 1
Computers and Technology, 24.06.2019 15:30
During the software planning process, rick, a project manager, finds that his team has made an incorrect estimation of funds. what kind of risk has rick identified? rick has identified a risk.
Answers: 1
Mathematics, 01.10.2019 15:00
Biology, 01.10.2019 15:00
Spanish, 01.10.2019 15:00
Chemistry, 01.10.2019 15:00
Biology, 01.10.2019 15:00
Mathematics, 01.10.2019 15:00
Chemistry, 01.10.2019 15:00
Social Studies, 01.10.2019 15:00
Mathematics, 01.10.2019 15:00