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)?
But why to consider bit addressable?
Its always word/Byte addressable. Isn't it??
@Arjun Sir's comment.
Yes, bit addressable aren't made but can be made.
Here is the Link:
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.
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.
When nothing is given, we always have to assume byte addressability.
So, 1 instruction = 3 B.
From mem location 300, load 99 instructions. We'll be on mem location 597, and PC would point to 600.
Or simply, look for multiples of 3.