Assignment - MARIE & ISA
Task-
Q1. A digital computer has a memory unit with 16 bits per word. The instruction set consists of 122 different operations. All instructions have an operation code part (opcode) and an address part (allowing for only one address). Each instruction is stored in one word of memory.
a) How many bits are needed for the opcode?
b) How many bits are left for the address part of the instruction?
c) What is the maximum allowable size for memory?
d) What is the largest unsigned binary number that can be accommodated in one word of memory?
Q2. Consider the MARIE program below.
a) List the hexadecimal code for each instruction.
b) Draw the symbol table.
c) What is the value stored in the AC when the program terminates?
Hex
Addr Label Instruction
100 Start, Load A
101 Add B
102 Store Temp
103 Load C
104 Add D
105 Add Temp
106 Store F
107 Output
108 HALT
109 A, DEC 5
10A B, DEC 3
10B C, DEC 4
10C D, DEC 13
10D E, DEC 3
10E Temp, HEX 00FD
10F F, HEX 00FE
Q3. Write code to implement the expression
F = (A+B) /(C*D*E) on 2-, 1- and 0-address machines.