machine language
PRACTICE EXAM #4 FALL 2018
1) Which micro-operations best implements this instruction: MOV CAT,AX
Circle the best answer: (A) (B) (C) (D) (E)***
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(2) MEM(MAR)-> MDR (5) AX -> MDR (5) AX -> MDR
(6) MDR -> AX (22) ADDR(IR) -> IP (14) MDR -> CX
(21) MDR -> MEM(MAR) (14) MDR -> CX (23) IP+2 -> IP
(14) MDR -> CX (23) IP+2 -> IP (5) AX -> MDR
(23) IP+2 -> IP (5) AX -> MDR
(5) AX -> MDR
(D) * (E)
(1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(4) ADDR(IR) -> MAR (4) ADDR(IR) -> MAR
(2) MEM(MAR)-> MDR (5) AX -> MDR
(6) MDR -> AX (21) MDR->MEM(MAR)
(23) IP+2 -> IP (23) IP+2->IP
2) Which micro-operations best implements this instruction: MOV AX, CAT
Circle the best answer: (A) (B) (C) (D)*** (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(2) MEM(MAR)-> MDR (5) AX -> MDR (5) AX -> MDR
(6) MDR -> AX (22) ADDR(IR) -> IP (14) MDR -> CX
(21) MDR -> MEM(MAR) (14) MDR -> CX (23) IP+2 -> IP
(14) MDR -> CX (23) IP+2 -> IP
(23) IP+2 -> IP
* (D) (E)
(1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(4) ADDR(IR) -> MAR (4) ADDR(IR) -> MAR
(2)MEM(MAR)-> MDR (6) MDR -> AX
(6) MDR -> AX (23) IP+2 -> IP
(23) IP+2 -> IP
3) Which micro-operations best implements this instruction:
JZ LOOPX <when the z flag=1>
Circle the best answer: (A) (B) (C)*** (D) (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(23) IP+2 -> IP (4) ADDR(IR) -> MAR (22) ADDR(IR) -> IP
(D) (E)
(1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(28) ESP -> MAR (27) ESP+4 ->ESP
4) Which micro-operations best implements this instruction:
JMP LOOPX
Circle the best answer: (A) (B) (C)*** (D) (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(23) IP+2 -> IP (4) ADDR(IR) -> MAR (22) ADDR(IR) -> IP
(D) (E)
(1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(28) ESP -> MAR (27) ESP+4 ->ESP
5) Which micro-operations best implements this instruction: PUSH EAX
Circle the best answer: (A) *** (B) (C) (D) (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(26) ESP-4 ->ESP (28) ESP -> MAR (28) ESP -> MAR
(28) ESP -> MAR (26) ESP-4 -> ESP (26) ESP-4 -> ESP
(7) EAX -> MDR (7) EAX -> MDR (23) IP+2 -> IP
(21) MDR -> MEM(MAR) (21) MDR -> MEM(MAR (21) MDR -> MEM(MAR)
(23) IP+2 -> IP (23) IP+2 -> IP (7) EAX -> MDR
(D) (E)
(1) IP->MAR (1) IP->MAR
(2)MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(28) ESP -> MAR (28) ESP -> MAR
(27) ESP+4 -> ESP (23) IP+2 -> IP
(23) IP+2 -> IP (27) ESP+4 -> ESP
(21) MDR -> MEM(MAR) (21) MDR -> MEM(MAR)
(7) EAX -> MDR (7) EAX -> MDR
6) Which micro-operations best implements this instruction: POP EBX
Circle the best answer: (A) (B) (C)*** (D) (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(12) MDR -> EBX (12) MDR-> EBX (28) ESP -> MAR
(2) MEM(MAR)-> MDR (9) MDR -> MEM(MAR) (2) MEM(MAR)-> MDR
(28) ESP -> MAR (12) MDR -> EBX (12) MDR -> EBX
(27) ESP+4 -> ESP (26) ESP-4 -> ESP (27) ESP+4 -> ESP
(23) IP+2 -> IP (23) IP+2 -> IP (23) IP+2 -> IP
(D) (E)
(1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(2) MEM(MAR)-> MDR (9) MDR -> MEM(MAR)
(12) MDR -> EBX (12) MDR-> EBX
(28) ESP -> MAR (28) ESP -> MAR
(27) ESP+4 -> ESP (26) ESP-4 -> SP
(23) IP+2 -> IP (23) IP+2 -> IP
7) Which micro-operations best implements this instruction: CALL ABC
Circle the best answer: (A) *** (B) (C) (D) (E)
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(26) ESP-4 ->ESP (28) ESP -> MAR (28) ESP -> MAR
(28) ESP -> MAR (26) ESP-4 -> ESP (26) ESP-4 -> ESP
(23) IP+2 -> IP (7) EAX -> MDR (23) IP+2 -> IP
(34) IP -> MDR (22) ADDR(IR) -> IP (22) ADDR(IR) -> IP
(21) MDR -> MEM(MAR) (21) MDR -> MEM(MAR (21) MDR -> MEM(MAR)
(22) ADDR(IR) -> IP (23) IP+2 -> IP (7) EAX -> MDR
(D) (E)
(1) IP->MAR (1) IP->MAR
(2)MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(28) ESP -> MAR (28) ESP -> MAR
(27) ESP+4 -> ESP (23) IP+2 -> IP
(22) ADDR(IR) -> IP (23) IP+2 -> IP
8) Which micro-operations best implements this instruction: RET
Circle the best answer: (A) (B) (C) (D) (E)***
(A) (B) (C)
(1) IP->MAR (1) IP->MAR (1) IP->MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR (3) MDR->IR
(26) ESP-4 ->ESP (28) ESP -> MAR (28) ESP -> MAR
(28) ESP -> MAR (26) ESP-4 -> ESP (26) ESP-4 -> ESP
(23) IP+2 -> IP (7) EAX -> MDR (23) IP+2 -> IP
(34) IP -> MDR (22) ADDR(IR) -> IP (22) ADDR(IR) -> IP
(21) MDR -> MEM(MAR) (21) MDR -> MEM(MAR) (21) MDR -> MEM(MAR)
(22) ADDR(IR) -> IP (23) IP+2 -> IP (7) EAX -> MDR
(D) (E)
(1) IP->MAR (1) IP->MAR
(2)MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(3) MDR->IR (3) MDR->IR
(28) ESP -> MAR (28) ESP -> MAR
(2) MEM(MAR)-> MDR (2) MEM(MAR)-> MDR
(7) EAX -> MDR (35) MDR -> IP
(23) IP+2 -> IP (27) ESP+4 -> ESP
(22) ADDR(IR) -> IP
9) If your computer has a Memory Address Register (MAR) of only 12 bits, how many memory cells
(BYTES) can you address?
ANSWER: 212 or approximately 4K Bytes.
10) You are designing a very small computer for a Mars mission. Because of
power and weight restrictions, this computer can only have 4096 or 4K bytes of memory.
How many bits should your Memory Address Register (MAR) be. In other words, how many
bits should your MAR be in order for it to address 4096 or (4K) bytes. (Addressing 0 through 4095).
Number of BITS in your MAR = 12 bits