2016-17_cce1000_mini_project
Mini-Project Program 1
• Write a program in VVM Assembler which will
divide two numbers, i.e. A / B
– If B > A, or B <= 0, then the program should prompt for input again – Answer should be taken to 1 or 2 decimal place, e.g. 41 / 9 = 4.56 – VVM does not support floating point numbers, so how to deal with the decimal part? – Getting the integer part of the answer correct is more important Program 1 Marking Scheme • 8% -- Code with comments + Screenshots – Screenshots should show input / output window + the mailbox contents – Also, state how to read the output, and where the results are stored – e.g. Answer 34.56 is displayed as 34 (integer), then 5 (first d.p.) and then 6 (second d.p.), or 34 (integer part) then 56 (decimal part) • 7% -- Run correctly with correct result Mini-Project Program 2 • Write a program that reverses the order of a given data using SimpSim Assembler – e.g. If input is 10, 20, 30, 50, 60, 40, then the output is 40, 60, 50, 30, 20, 10 – You may assume the input to be stored starting memory address 80 – The length of input can be varied, so don’t just load all the input to the registers in reverse order! – You can also assume input ends with number 00 Program 2 Marking Scheme • 8% -- Code with comments + Screenshots – Screenshots should show start and end screens – Also, state where the output is stored (i.e. which memory locations) – State any assumption(s) you made in the comments • 7% -- Run correctly with correct result • Submission: To SOUL (zipped source code) + hard copy (code + screenshots) • Deadline: 10pm, 2017.01.06 (Fri)