Another aspect of encoding is whether it is direct or indirect (Figure 16.11b).
With indirect encoding, one field is used to determine the interpretation of another
field. For example, consider an ALU that is capable of performing eight different
arithmetic operations and eight different shift operations. A 1-bit field could be used
to indicate whether a shift or arithmetic operation is to be used; a 3-bit field would
indicate the operation. This technique generally implies two levels of decoding, increasing
propagation delays.