Using MARS write a MIPS assembly language that 1. prompts for the first integer
ID: 3663382 • Letter: U
Question
Using MARS write a MIPS assembly language that
1. prompts for the first integer by displaying "Give me an integer: "; then reads the first integer into a memory location labeled 'int1',
2. prompts for the second integer by displaying "Give me another integer: "; then reads the second integer into a memory location labeled 'int2',
3. calculates the sum of the two integers then prints out the string "The sum of these two integers is: ", and the sum of int1 and int2. E.g. "The sum of these two integers is: 100" if the first integer was 99 and the second one was 1.
Explanation / Answer
# PROGRAM TO ADD TWO NUMBERS
# Text segment
# (all programs start with the next 3 lines)
.text #directive identifying the start of instructions
.globl __start__start:
# ------------- print prompt on "console" --------------------
la $a0, prompt # address of prompt goes in
li $v0, 4 # service code for print string
syscall
# ------------- read in the integer --------------------------
li $v0, 5 # service code
syscall
sw $v0, Num1 # store what was entered
# -------------- read another
li $v0, 5 # service code
syscall
sw $v0, Num2 # store what was entered
# ------ Perfrom the addition, $a0 := Num1 + Num2
lw $t0, Num1
add $a0, $t0, $v0
# ------ print the sum, it is in $a0
li $v0, 1 # print integer service call
syscall
# ------ print a final string identifying the result, and ending with a new line
la $a0, final
li $v0, 4
syscall
li $v0, 10 # exit program service
syscall
#------------------------------------------------------------------
# Data segment
#------------------------------------------------------------------
.data
Num1: .word 0
Num2: .word 0
prompt: .ascii "Please type 2 integers, end each with the "
.asciiz "Enter key: "
final: .asciiz " is the sum. "
#------ end of file ADDNUMS.ASM
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.