+1 (315) 557-6473 

Convert Simple C++ Code To Assembly Language Assignment Solution.


Instructions

Objective
Write a program in assembly language to convert simple C++ code.

Requirements and Specifications

To write a C++ assignment program use proper syntax and format to convert the following C++ code to assembly language. The C++ code is given below.
C++ Code
Screenshots of output
Convert simple C++ code to Assembly language
Source Code
.text
main:
 # result = 0
 li $s0, 0
 # for (i = 1; i < 3; i++)
 li $s1, 1
for:
 bge $s1, 3, endfor
 # result = result + caller(i)
 move $a0, $s1
 jal callee
 add $s0, $s0, $v0
 addi $s1, $s1, 1
 j for
endfor:
 # return
 li $v0, 10
 syscall
# int callee(int x)
callee:
 addi $sp, $sp, -12
 sw $ra, 0($sp)
 sw $s0, 4($sp)
 sw $s1, 8($sp)
 # int v=0;
 li $s0, 0
 # int y=2*x;
 sll $s1, $a0, 1
 # v = leaf(y) +y;
 move $a0, $s1
 jal leaf
 add $s0, $v0, $s1
 # return v;
 move $v0, $s0
 lw $ra, 0($sp)
 lw $s0, 4($sp)
 lw $s1, 8($sp)
 addi $sp, $sp, 12
 jr $ra
# int leaf(int arg1)
leaf:
 # u = arg1 * arg1
 mult $a0, $a0
 # return v
 mflo $v0
 jr $ra