Encoding an instruction set
Operator of the instruction is encoded into opcode.
When there are large number of addressing modes and more than one memory operands are allowed in an instruction, each operand must have an address specifier.
Otherwise if it is like the load/store machine, the operands can be encoded along with the opcode itself.
The number of addressing modes and number of registers have a significant effect on instruction length. why?
Finally, you would like the length of the instruction to be integral number of words.