4-2/4-3 MARIE Flashcards

1
Q

Which of the following is an example of unconditional branching in MARIE’s architecture?

A

JUMP

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Which of the following CPU components is responsible for fetching and decoding instructions?

A

The Control Unit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Decoding the instruction must always take place before an instruction is executed.

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

The JUMP instruction will change the value stored in which location?

A

Program Counter

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Which of the following are the components of an instruction in MARIE’s architecture?

A

Address, Opcode

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

In MARIE’s architecture, explain what action is taken by the following RTN statement.

IR <– M[MAR]

Would the statement be categorized as a step in fetch, decode, or execute?

A

It is moving an instruction from MM into the IR. It is part of fetch.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What data would the memory address register (MAR) hold in MARIE? Where would data placed in the MAR be sent after being written into the register?

A

The MAR holds a memory address. The address is always sent via a direct connection to main memory when reading or writing main memory.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Evaluate the following instruction (MARIE architecture) to determine its human-readable opcode (example: LOAD) and the hexadecimal number of the specified memory address. An example answer format is “JUMP 123”.

0011001000011110

A

0011 0010 0001 1110

0011 = add x

0010 = 2

0001 = 1

1110 = E

ADD 21E

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

In one or two sentences, what does following simple program do (MARIE architecture)?
LOAD 100
STORE 200
LOAD 300
STORE 400
ADD 200
HALT

A

The program moved a stored value from 100 to 200, then moves a stored value from 300 to 400. Afterward, it adds the stored value at 200 to the AC value (300/400) and halts.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly