- arithmetical instructions with constants and carry flag
Opcode Mnemonic Description Flags 0b000000 ADC(B) reg reg ← reg + C P, N, Z, V, C 0b000001 INC(B) reg
ADD(B) reg, 1reg ← reg + 1 P, N, Z, V, C 0b000010 ADD(B) reg, 2 reg ← reg + 2 P, N, Z, V, C 0b000011 ADD(B) reg, 4 reg ← reg + 4 P, N, Z, V, C 0b000100 SBC(B) reg reg ← reg - C P, N, Z, V, C 0b000101 DEC(B) reg
SBC(B) reg, 1reg ← reg - 1 P, N, Z, V, C 0b000110 SBC(B) reg, 2 reg ← reg - 2 P, N, Z, V, C 0b000111 SBC(B) reg, 4 reg ← reg - 4 P, N, Z, V, C - shift and rotate instructions (only one position left or
right)
Opcode Mnemonic Description Flags 0b001000 SAR(B) reg Arithmetical shift right P, N, Z, V, C 0b001001 SAL(B) reg Arithmetical shift left P, N, Z, V, C 0b001010 SHR(B) reg Logical shift right P, Z 0b001011 SHL(B) reg Logical shift left P, Z 0b001100 RCR(B) reg Roll through carry flag right P, N, Z, V, C 0b001101 RCL(B) reg Roll through carry flag left P, N, Z, V, C 0b001110 ROR(B) reg Roll right no effect 0b001111 ROL(B) reg Roll left no effect - various instructions
Opcode Mnemonic Description Flags 0b010000 NOT(B) reg Logical inversion P, Z 0b010010 NEG(B) reg Two’s complement P, N, Z, V, C - instructions for working with status register (mirroring the corresponding MIS instructions)
Opcode Mnemonic Description Flags 0b010100 LDSR(B) reg
LD(B) SR, regLoad SR from reg P, N, Z, V, C 0b010101 ORSR(B) reg
OR(B) SR, regSet flags selected by reg P, N, Z, V, C 0b010110 BRSR(B) reg
BRS(B) SR, regReset flags selected by reg P, N, Z, V, C 0b010111 STSR(B) reg
ST(B) SR, regStore SR to reg no effect
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.