Student information is being held in a data area, where each student record has the following format: The first nine bytes are the student number, held in ASCII The next byte is the course mark The next word is the section identifier There are well over three hundred such student records that have been loaded sequentially into memory starting at address $10000. The last record loaded is a dummy record with a section identifier of $FFFF, to show the end of the records. Write an assembler subroutine GetMax that will scan the entire list and find the highest mark. If there is a tie, the first student in the list with the highest mark should be found. The subroutine should return the starting address of this record in address register a3.
Student information is being held in a data area, where each student record has the following format:
The first nine bytes are the student number, held in ASCII
The next byte is the course mark
The next word is the section identifier
There are well over three hundred such student records that have been loaded sequentially into memory starting at address $10000. The last record loaded is a dummy record with a section identifier of $FFFF, to show the end of the records.
Write an assembler subroutine GetMax that will scan the entire list and find the highest mark. If there is a tie, the first student in the list with the highest mark should be found. The subroutine should return the starting address of this record in address register a3.
Trending now
This is a popular solution!
Step by step
Solved in 2 steps