Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

CS413 Lab 2 ARM Stack Program Areas of Plane Shapes Calculator The purpose of this program is to get the student to use the stack

image text in transcribed

CS413 Lab 2 ARM Stack Program Areas of Plane Shapes Calculator The purpose of this program is to get the student to use the stack to pass parameters to and from their own defined subroutines/functions in ARM Assembly. Write an ARM Assembly program that will calculate the area of the following four plane shapes: a) Triangle b) Rectangle c) Trapezoid d) Square All number inputs are integers and all calculation results are provided in integer format. Any fractional calculations are to be truncated. The program must all meet the following requirements: 1. Each area calculation must be accessed as a subroutine/function (ARM instruction BL). 2. The operands are passed to the function via the stack. Use the ARM pseudo instructions PUSH and POP. To ensure you are properly implementing the stack the registers used in your main routine to hold the operands must be different than those used in the subroutines. For example, your calling routine will push 14 and 15 on the stack but the called routine will pop into registers r10 and rll. 3. The function returns the results on the top of the stack. 4. Your program is to print a welcome/instruction messages to the user. 5. The user is prompted to enter the calculation type and the appropriate number of positive integers. 6. The program shall verify the user input is valid and report any entry errors. Ensure your program checks for non-integer inputs (string, floating-point, characters). Invalid entries are reported and user prompted again to enter a valid input. 7. The program shall perform the calculation, display the results and report any overflow errors. Overflow is when the results do not fit into 32-bit unsigned format. 8. Ask the user if they want to continue with another calculation or quit the program. The GTAs will run your program to ensure correct functioning and will also review your code to ensure you have properly implemented the functions and stacks. CS413 Lab 2 ARM Stack Program Areas of Plane Shapes Calculator The purpose of this program is to get the student to use the stack to pass parameters to and from their own defined subroutines/functions in ARM Assembly. Write an ARM Assembly program that will calculate the area of the following four plane shapes: a) Triangle b) Rectangle c) Trapezoid d) Square All number inputs are integers and all calculation results are provided in integer format. Any fractional calculations are to be truncated. The program must all meet the following requirements: 1. Each area calculation must be accessed as a subroutine/function (ARM instruction BL). 2. The operands are passed to the function via the stack. Use the ARM pseudo instructions PUSH and POP. To ensure you are properly implementing the stack the registers used in your main routine to hold the operands must be different than those used in the subroutines. For example, your calling routine will push 14 and 15 on the stack but the called routine will pop into registers r10 and rll. 3. The function returns the results on the top of the stack. 4. Your program is to print a welcome/instruction messages to the user. 5. The user is prompted to enter the calculation type and the appropriate number of positive integers. 6. The program shall verify the user input is valid and report any entry errors. Ensure your program checks for non-integer inputs (string, floating-point, characters). Invalid entries are reported and user prompted again to enter a valid input. 7. The program shall perform the calculation, display the results and report any overflow errors. Overflow is when the results do not fit into 32-bit unsigned format. 8. Ask the user if they want to continue with another calculation or quit the program. The GTAs will run your program to ensure correct functioning and will also review your code to ensure you have properly implemented the functions and stacks

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Advanced Oracle Solaris 11 System Administration

Authors: Bill Calkins

1st Edition

0133007170, 9780133007176

More Books

Students also viewed these Databases questions