Assignment 2: MARIE and ISA
Value: 15%
Due date: 14-May-2018
Return date: 05-Jun-2018
Submission method options
Alternative submission method
Task
1. (a) TheFibonacci numbersare the numbers in the followinginteger sequence, called theFibonacci sequence, and are characterised by the fact that every number after the first two is the sum of the two preceding ones: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 114, … etc.
By definition, the first two numbers in the Fibonacci sequence are 0 and 1, and each subsequent number is the sum of the previous two. We define Fib(0)=0, Fib(1)=1, Fib(2)=1, Fib(3)=2, Fib(4)=3, etc. The first 22 Fibonacci numbersgiven below:
Fib(0) | Fib(1) | Fib(2) | Fib(3) | Fib(4) | Fib(5) | Fib(6) | Fib(7) | Fib(8) | Fib(9) | Fib(10) |
0 | 1 | 1 | 2 | 3 | 5 | 8 | 13 | 21 | 34 | 55 |
Fib(11) | Fib(12) | Fib(13) | Fib(14) | Fib(15) | Fib(16) | Fib(17) | Fib(18) | Fib(19) | Fib(20) | Fib(21) |
89 | 144 | 233 | 377 | 610 | 987 | 1597 | 2584 | 4181 | 6765 | 10946 |
Write a MARIE program to calculate Fib(n), where the user inputs n. For example, if the user inputs 7, the program outputs the value 13; if the user inputs 15, the program outputs the value 610; if the user inputs 20, the program outputs the value 6765 etc. You need to write and run the program using MARIE simulator. Please include appropriate comments to make your code readable.[10 marks]
(b) For some values of n, your program will not produce correct results. You can check this by gradually increasing the values of n and checking for the correct outputs. What is the maximum value of n for which your program produces a correct result? Why? Please comment on this [5 marks].
2. You are designing an instruction set for your computer. All the instructions are of same size (11 bits long). The size of an address field is 4 bits. You have already designed six 2-address instructions and 30 1-address instructions. How many 0-address instructions still you can fit? Justify your answer. [7 marks]
3. Write codes to implement the expression: A= (B + C) * (D – E) on 3-, 2-, 1- and 0-address machines. In accordance with programming language practice, computing the expression should not change the values of its operands. [8 marks]
Rationale
This assessment task covers topics on CPU operation and Instruction Set Architecture, and has been designed to ensure that you are engaging with the subject content on a regular basis. More specifically it seeks to assess your ability to:
- be able to investigate the internal operation of the Central Processing Unit (CPU) and describe how it is used to execute instructions;
- be able to investigate and describe in detail the essential elements of computer organisation including internal bus, memory, Input/Output ( I/O) organisations and interfacing standards and discuss how these elements function;
Marking criteria
Criteria | HD (85%-100%) | DI (75%-84%) | CR (65%-74%) | PS (50%-64%) | FL (0%-49%) |
Simulating and investigating of internal operations of CPU and it's instruction execution | The code meets the specification. Code is well documented with comments. The program produces correct outputs in every input situations. | Code meets specification and is well documented with comments. Minor errors in explanationse. | Code meets specification. Most of the time produces correct results, however does not produce correct results for special inputs. Little documentation and comments. | Code meets specification but has errors in operation. Little commenting. Basic idea is expressed by the codes and explanations. | Code does not meet the specification. |
Comprehension of internal elements of computer organisation | Answers are corrects. All steps are correctly shown. All codes are accurately written. | All answers are correct with a minor error. All codes are correct except a minor error. | Few minor errors in calculating the address spaces. The steps show the clear understanding of the address space calculation. All codes written correctly however the order were not maintained correctly. | The final result is not correct, however the calculations show the basic understanding of the instruction set architecture. More than half of the codes are correct. | No attempt or incorrect calculations showing no or minimum understanding of the topic. Codes do not meet the specification. |
Presentation
File naming convention: When you upload files to the TURNITIN for this subject, please use your student ID and Assignment number to name your files. For example, 123456_Assignment2.doc or 123456_Assignment2.mas (where XXXXXXXXXXis your Student ID)
1.Due date to submit – 14 May 2018
2.Please do not copy and paste the questions in the word document from subject outline
3.For Q1(a) you need to submit a *.mas file (ZIP File) - Separate folder is created in TURNITIN by your Respective Lecturer, any issues, please contact your lecturer immediately. Please copy and paste the MARIE coding as a plain text in the Assignment Word Document. And also print screen of the MARIE Outputs for 3 given inputs.
4.Please compose the answers of 1(b), 2 and 3 also into the word document file (doc ordocxformat). Please do not submit inpdfformats. Please upload the document in the TURNITIN – Assignment 2 FINAL Folder after verified plagiarism within deadline.
5. The first page (cover page) of the document file should have the following information clearly mentioned:
a. Your full name
b. Your Student ID
c. Subject Code (ITC544)
d. Assessment item number and name (Assignment 2: MARIE & ISA)
6. Each page should have page numbers in “page x of y” format (including the cover page).
7. You DO NOT need to provide any references for any of the questions.