Call toll free: +1 (304) 397-0675 or Request a call

CSP25 Assignment 07 Question 1 (From Chapter 6) Create a

CSP25 Assignment 07
Question 1 (From Chapter 6)
Create a procedure named CalcGrade that receives an integer value  
between 0 and 100, and returns a single capital letter in the AL  
register. Preserve all other register values between calls to the  
procedure. The letter returned by the procedure should be according  
to the following ranges:

Score Range  Letter Grade
————————-
90 to 100        A
80 to  89        B
70 to  79        C
60 to  69        D
0 to  59        F

Write a test program that generates 10 random integers between 50 and 100,  
inclusive. Each time an integer is generated, pass it to the CalcGrade  
procedure.   

You display the integer generated by using the Irvine method WriteDec.
Also use WriteString method to display a message such as “The grade is : “
and then use WriteChar to display the grade calculated.

Here is an algorithm for your test program to help achive solution for this problem:
(Next page)

You still need to figure out how to get grade correctly in your CalcGrade procedure.

 
Algorithm for test program.

Set count to 10 (Can be in ECX)

Start of Loop
 set upper limit to 51
 Call RandomRange procedure
   [generate # result from 0 to 50 and it is in EAX]
 Add 50 to result above to get 50 to 100. Add to EAX
 Display this number (in EAX) using WriteDec
 Call CalcGrade procedure (and grade will be in AL)
 Setup string to be displayed ” ”
 Call WriteString
 Call WriteChar (to display grade in AL)
Repeat loop

Algorithm for CalcGrade procedure.

# score of 50 to 100 is in EAX

If EAX > 90
  Set al to ‘A’
Else if EAX > 80
  Set al to ‘B’  
Else if EAX > 70
  Set al to ‘C’  
Else if EAX > 60
  Set al to ‘D’  
Else
  Set al to ‘F’   

Make sure you have the following at the top of your Assembly code file. Fill it up accordingly
such as the name of the asm file will be Assignment07.asm
; Program Template (Assignment01.asm)
; Program Description: <fill this up>
; Author: <fill this up>
; Creation Date: <fill this up>
; Revisions:  <fill this up if necessary>

; Date:Modified : <fill this up if necessary>
Also make sure to document your Assembly code.

What to submit?
TWO files.
1. Copy your program and paste it to a text editor such as Notepad and save file as .txt file
then submit this text file.
2. A pdf file that has your code (copied or screenshot) and output of dumping of your
registers.

Looking for a Similar Assignment? Get Expert Help at an Amazing Discount!