Kasoft


KASOFT
Documentation

Unary ALU instructions

Assembler input:

MOV|MVN <dest>,<shift>

Assembler output:

  • High byte as standard
  • Sixth nybble contains AL subinstruction code and S flag
    • Bits 21-23 (3-bit cardinal) are AL subinstruction code (either A or E)
    • Bit 20 is S flag
  • Fifth nybble is 0
  • Fourth nybble is destination register
  • Bottom three nybbles depend on base instruction grouping

If base instruction code is 1 then:

  • Bit 4 determines whether shift factor is a register or a constant
  • 0
    Shift factor is a constant
    • Bits 7-15 (5-bit cardinal) are shift factor
    • Bits 5-6 are barrel shifter subinstruction code
    1
    Shift factor is a register
    • Third nybble is register containing shift factor
    • Bit 7 is 0 (indicating AL instruction, NOT multiply instruction)
    • Bits 5-6 are barrel shifter subinstruction code
  • Low nybble is source register

If base instruction code is 3 then:

  • Bottom three nybbles are an immediate constant

The following are valid subinstruction codes:

Value Base instruction mnemonic
5 MOV
7 MVN
Maintained by Kade Hansson; e-mail: archer@kasoft.info; Updated on 30 December 1993; XHTML 1.0 Transitional.