Dark Mode

shiva verma
asked
in CO and Architecture
Aug 1, 2017

159 views
1 vote

The format of a double operand instruction of a cpu consist of 4 bit op-code and 4 bits for source and destination. 12 double operand instructions and 24 single operand instructions must be implemented. Op-code field mus identify three groups of n-operand instructions . What is the total number of zero operand instructions that can be implemented ?

0 votes

Number of operations possible = 2^{opcode} = 2^{4} =16

Here, address field value is 4 bits each for source and destination. So that makes instruction format as :

opcode (4 bits) | Address field for source (4 bits) | Address filed for destination (4 bits) |

<-------------------------------- 12 bits ------------------------------>

Number of 2 address instructions = 12

$\therefore$ Free combinations = 16 - 12 = 4

Now, we'll allocate memory for 1 address instructions

So, number of 1 address instructions possible = Free combinations * decoded value of address field

= 4 * 2^{4}

^{ }= 64

But there are only 24 1 address instructions available, so the remaining must be allocated to 0 address instructions.

So, number of addresses free after allocation of 1 address instructions = 64 - 24 = 40

$\therefore$ Number of 0 address instructions possible = 40 * decoded value of address field

= 40 * 2^{4}

^{ }= 640

**Note :*** In expand opcode technique, we always allocate space for higher addresses initially and then move on to the lower addresses.*