DEC
reg1, reg2 reg1 reg2
res <- op1 -1, if underflow then C = 0 C, V, Z, areg reg reg
reg, eaddr reg eaddr
DECC
reg1, reg2 reg1 reg2
res <- op1 -(1 -C), if underflow then C = 0 C, V, Z, areg reg reg
reg, eaddr reg eaddr
AND
reg, data:8 reg reg data
res <- op1 AND op2 -, -, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
OR
reg, data:8 reg reg data
res <- op1 OR op2 -, -, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
XOR
reg, data:8 reg reg data
res <- op1 XOR op2 -, -, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
ADD
reg, data:8 reg reg data
res <- op1 + op2, if overflow then C=1 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
ADDC
reg, data:8 reg reg data
res <- op1 + op2 + C, if overflow then C=1 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
SUBD
reg, data:8 reg reg data
res <- op1 -op2, if underflow then C=0 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
SUBDC
reg, data:8 reg reg data
res <- op1 -op2 - (1-C), if underflow then C=0 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
SUBS
reg, data:8 reg reg data
res <- op2 -op1, if underflow then C=0 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
SUBSC
reg, data:8 reg reg data
res <- op2 -op1 - (1-C), if underflow then C=0 C, V, Z, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
MUL
reg, data:8 reg reg data
res <- op1 * op2 (15:8), a <- op1 * op2 (7:0),
unsigned
-, -, -, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
MULA
reg, data:8 reg reg data
res <- op1 * op2 (15:8), a <- op1 * op2 (7:0),
signed (2 c o mplement)
-, -, -, a
reg1, reg2, reg3 reg1 reg2 reg3
reg1, reg2 reg1 reg2 reg1
reg reg reg eaddr
MSHL reg, shift:3
a(bitn) <- reg(bitn-shift) for (bitn >= shift),
reg(bitn) <- reg (bitn+8-shift) for (bitn < shift)
-, -, -, a
MSHR reg, shift:3
reg(bitn) <- reg(bitn+shift) for (bitn + shift < 8),
a(bitn) <- reg (bitn-8+shift) for (bitn + shift >= 8)
-, -, -, a
MSHRA reg, shift:3
a <- SHRA(shift,reg), a <- SHL(8-shift,reg),
SHRA propagates sign, do not use with shift=0x01
-, -, -, a
CMP
reg, data:8 reg data
if op2 > op1 then C <- 0, V = C AND NOT(Z),
unsigned
C, V, Z, areg1, reg2 reg1 reg2
reg, eaddr reg eaddr
NAME Parameters res op1 op2 FUNCTION MODIF.
Table 1.2: XE8000 Instruction Set