
// iloc is location counter for this instruction
// v is the value of the expression
// field is the base value for the opcode
// rngerr() reports a "out of range error"
  if (((iloc+2) & 0xf800) != (v & 0xf800)) rngerr();
  field |= (v & 0x700) >> 3;
  operand = v & 0xff;
