12,976 views

A CPU has $24$-$bit$ instructions. A program starts at address $300$ (in decimal). Which one of the following is a legal program counter (all values in decimal)?

1. $400$
2. $500$
3. $600$
4. $700$

## 8 Answers

Best answer
Option $(C)$. $24$ bits = $3$ bytes instructions. So, PC will have multiples of $3$ in it.
by

### 4 Comments

CPU is byte addressable always if not given
bit addressable naya aya hh kya market me? 😁

There is nothing as bit addressable!

C) is the ans

size of instruction  =  24/8 = 3 bytes.

Program Counter can shift 3 bytes at a time to jump to next instruction.

So the given options must be divisible by 3. only 600 is satisfied.

### 2 Comments

Can you explain  why you divided 24 by 8?
Converting bit to byte and as a instruction size is 3 bytes each,program counter will shift 3 bytes each time so address will be multiple of 3.
After each instruction cycle the PC needs to be updated to point to the next instruction in memory.

INSTRUCTION SIZE : 24BITS or 3Bytes

Address of next instruction : 303 then 306 and so on.

So it is an AP series and only 600 comes under this series. So answer is C

Actually the question is incomplete. It should be mentioned in the question that the

CPU is byte-addressible so that the PC will increment byte by byte. Now because the instruction is 3byte, the PC has to increment 3 times.

So the answer is 600, since it is the only option which is multiple of 3.

by
Answer:

15 votes
2 answers
1
35 votes
4 answers
2
29 votes
3 answers
3
7,690 views
51 votes
3 answers
4
12,111 views