Ask Other Engineering Expert

1. Rewrite your program in #1 to use a procedure for the conversion. In other words, if you send ‘a' to the procedure it will return ‘A'. Leave the rest of the code in main. Test it on the source strings: "loop2:" and "Elephant!" You should print two memory screen shots, one for each input data.

In your procedure you should add code to check if the byte sent to the procedure is in fact a lowercase letter, and only convert if it is; otherwise it should just return the byte.

In the program for problem 1 you could use $tn registers but in this program you should follow the conventions for using $sn and $tn registers.

Also, use the directive .space for the second string, reserving at least 25 bytes.
This is my code:
.data
in_string: .asciiz "Input your string please:\n"
out_msg: .asciiz "Uppercase of your strings are:\n"
in_name:
.space 25 # space for input string

.text
.globl main
main: la $a0,in_string # prompt user for input
li $v0,4
syscall

la $a0,in_name # read the input string
li $a1,25
li $v0,8
syscall

la $a0,out_msg # write output message
li $v0,4
syscall

la $t0,in_name

loop:
lb $s1,($t0)
beqz $s1,exit_loop # if NULL, we are done
blt $s1,'a',lowercase_Var
bgt $s1,'z',lowercase_Var
addu $s1,$s1,-32 # convert to uppercase

lowercase_Var:
sb $s1,($t0)
addu $t0,$t0,1 # increment pointer

j loop

exit_loop:
la $a0,in_name # output converted string
li $v0,4
syscall

li $v0,10 # exit
syscall

2. We don't have to save $s0 and $s1 in our procedure because we didn't use them. However, to observe the process, go ahead and add statements at the top of the procedure to save $s0 and $s1 on the stack and statements at the bottom of the procedure to restore them. Single-step through your program (at least through the first subroutine call) and answer the following questions. Copy a-g below and paste your answers/screen shot here.

a. Single-step to the jal statement. Write down the contents of registers:

• $sp=
• $pc=
• $ra =

b. Single-step over the jal. Write the down the contents of registers:

• $ra=
• $pc=

c. Single-step over the instructions that save $s0, $s1 on the stack. Change the memory window to look at the current $sp, uncheck ASCII if you have it checked. Take a screen shot showing the stack and the current $sp

d. Single-step through the procedure, through the statements that restore $s0 and $s1. Write down the contents of registers:

• $sp =
• $pc =

e. Single-step back to the calling procedure. Write down the contents of registers:

• $sp =
• $pc =
• $ra =

f. Write a 3-4 sentence summary of how the $pc and $ra registers are affected by subroutine calls and returns.

g. Write a 4-6 sentence summary describing the (i) the convention of saving $sn registers at the top of the subroutine and restoring them at the end (ii) how registers are stored/restored on the stack and how the $sp is affected, (iii) what the stack looks like after you return from a subroutine. Is the data pushed onto the stack still there? Where does the $sp point?

Other Engineering, Engineering

  • Category:- Other Engineering
  • Reference No.:- M91986294
  • Price:- $60

Guranteed 36 Hours Delivery, In Price:- $60

Have any Question?


Related Questions in Other Engineering

Register design a cpu register is simply a row of

Register design A CPU register is simply a row of flip-flops (i.e. SR, JK, T, etc) put side by side in an array to make the size of register required. For example, an 8 bit register has 8 flip-flops side by side for stor ...

A detailed review of spatial modulation and simulation

A Detailed Review of Spatial Modulation and Simulation Learning Outcomes a. Learn how to model mobile communication channels d. Discern knowledge development and directions on the recent advances in 4G to the research pr ...

Mine safety amp environmental engineering assignment -part

Mine Safety & Environmental Engineering Assignment - Part 1 - Questions 1. Occupational health and safety is the primary factor that needs to be considered in the mining industry. Discuss this statement. 2. Define the fo ...

Projectflow processing of liquor in a mineral refining

Project Flow Processing of Liquor in a Mineral Refining Plant The aim of this project is to design a flow processing system of liquor (slurry) in a mineral (aluminum) refining plant. Aluminum is manufactured in two phase ...

Learning outcomes evaluate multiuser communication and

Learning Outcomes Evaluate multiuser communication and resource sharing techniques; Apply the techniques of, and report on, digital communication applications using Matlab and hardware devices. Assignment Description The ...

Operations engineering assignment -please select only one

Operations Engineering Assignment - Please select only one of the following case studies for your assignment: CASE A. Tesla Motors Tesla is an innovative manufacturer that designs, assemble and sells fully electric vehic ...

Select a risk problem from the list below and prepare a

Select a risk problem from the list below and prepare a risk management plan in accordance with AS/NZS ISO 31000:2009. Please ensure that: - Establish the context clearly, in accordance with the Standard; - Define your s ...

Engineering materials term paper assignment -conduct a

ENGINEERING MATERIALS TERM PAPER ASSIGNMENT - Conduct a thorough literature search and write a 15-20 page technical review paper on the evolution of the engineering materials used in the manufacturing of any one of the f ...

Task 1using the lab kit design a circuit for the processor

Task 1: Using the lab kit, design a circuit for the processor to control the output of a connected 7-segment LED display device. You will be provided with a standard common anode 7-segment display of the type FND-507 (or ...

Control theory - lab reportsfor experiments 1 to 4 you must

Control Theory - Lab Reports For experiments 1 to 4 you must undertake the following: a) At the start of each section (including the pre-lab activities) there are a number learning outcomes. That is, what students should ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As