| CSE306 | Processing Systems and Structures | Lockwood, Spring 2003 |
| Due Date | Thursday, Feb 13, 2002 |
| Purpose | Looping, branching, and math operations. |
| Points | 50 |
A list of scores is given to you in the form of a database. For CSE306, our database is collection of records that each hold a student ID and individual raw scores. The ID is an alpha-numeric string stored as 5 ASCII characters and terminated with a '$' symbol. Each of the 16 individual raw scores is stored as a 1-byte unsigned integer. The total score is represented as a 2-byte unsigned integer. In total, each CSE306 record occupies 24 bytes.
Sample databases are included with this assignment. The real database with your IDs and scores is available on-line from the gradebook page.
| Field | ID | Homework | Machine Problems | Exams | Final | Total | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Data | AAAAA$ | B | B | B | B | B | B | B | B | B | B | B | B | B | B | B | B | WW |
| Offset | 0 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 |
For this machine problem, you will use the INCLUDE directive to read a database of fictitious CSE306 scores into your program. This directive will insert the contents of the specified file into your .ASM program at the time you assemble with MASM. The gbk-test.dta and gbk-big.dta files each define a variable called gbk which holds an entire database of student records as well as a variable called numrec which stores the number of records in the database. The contents of gbk-test.dta is shown below:
; Format: id,'$',hw0,hw1,hw2,hw3,hw4,hw5,
; mp0,mp1,mp2,mp3,mp4,mp5,mp6(project),
; exam1,exam2,final
gbk db 'PRFCT','$',25,75,75,75,75,75, 25,50,50,50,50,50,125, 150,150,200, 0,0
db 'DOPEY','$',10,40,40,40,40,40, 0,20,30,40,40,40, 70, 50, 60, 70, 0,0
db 'HAPPY','$',25,20,75,25,75,25, 25,50,35,50,40,50,100, 115, 90,150, 0,0
db 'LUCKY','$',20,70,70,70,70,70, 20,40,40,40,40,40, 90, 110,120,150, 0,0
db 'ANGRY','$',20,40,40,40,40,30, 10,20,30,40,40,30, 70, 60, 50, 70, 0,0
numrec dw 5 |
A similar table of current scores for this class can be dynamically generated and downloaded from the CSE306 on-line gradebot.
464 .. 479 ** 480 .. 495 496 .. 511 512 .. 527 528 .. 543 544 .. 559 560 .. 575 576 .. 591 592 .. 607 608 .. 623 624 .. 639 640 .. 655 656 .. 671 672 .. 687 688 .. 703 704 .. 719 720 .. 735 736 .. 751 752 .. 767 * 768 .. 783 * 784 .. 799 800 .. 815 816 .. 831 832 .. 847 848 .. 863 864 .. 879 880 .. 895 896 .. 911 912 .. 927 928 .. 943 944 .. 959 960 .. 975 976 .. 991 992 .. 1007 * LIBMP1 Calls: CompTotal FillTable PlotChart |
640 .. 655 * 656 .. 671 * 672 .. 687 688 .. 703 * 704 .. 719 *** 720 .. 735 * 736 .. 751 *** 752 .. 767 *** 768 .. 783 ******* 784 .. 799 ******** 800 .. 815 **** 816 .. 831 ********* 832 .. 847 ***** 848 .. 863 ************ 864 .. 879 *********** 880 .. 895 ******** 896 .. 911 *** 912 .. 927 * 928 .. 943 * 944 .. 959 *** LIBMP1 Calls: CompTotal FillTable PlotChart |