A certain ISA has a 32-bit word size, uses single word instructions, has 120 opcodes, 32 registers, and 4Gbyte of byte-addressable memory. One group of instructions in this ISA takes the form:
OPCODE | DESTINATION REGISTER | SOURCE REGISTER | FLAG | IMMEDIATE VALUE
Or
OPCODE | DESTINATION REGISTER | SOURCE REGISTER 1 | FLAG | SOURCE REGISTER 2
A single bit in the instructiin ("Flag") is used to differentiate these two addressing modes.
Another group instruction takes the form
OPCODE | SOURCE/DESTINATION REGISTER | PC OFFSET
How many bits are required for addressing (i.e. what is the size, in bits, of a memory address)?
a. 32 bits
b. 28 bits
c. 16 bits
d. 30 bits
e. 31 bits