Hardware manual

Rev. 3.0, 09/98, page 32 of 361
2.5.2 Arithmetic Operations
Table 2.5 describes the arithmetic instructions. See figure 2.6 in section 2.5.4, “Shift Operations
for their object codes.
Table 2.5 Arithmetic Instructions
Instruction Size
*
Function
ADD
SUB
B/W Rd ± Rs Rd, Rd + #imm Rd
Performs addition or subtraction on data in two general registers, or
addition on immediate data and data in a general register. Immediate
data cannot be subtracted from data in a general register. Word data can
be added or subtracted only when both words are in general registers.
ADDX
SUBX
B Rd ± Rs ± C Rd, Rd ± #imm ± C Rd
Performs addition or subtraction with carry or borrow on byte data in two
general registers, or addition or subtraction on immediate data and data in
a general register.
INC
DEC
B Rd ± #1 Rd
Increments or decrements a general register.
ADDS
SUBS
W Rd ± #imm Rd
Adds or subtracts immediate data to or from data in a general register.
The immediate data must be 1 or 2.
DAA
DAS
B Rd decimal adjust Rd
Decimal-adjusts (adjusts to packed BCD) an addition or subtraction result
in a general register by referring to the CCR.
MULXU BRd × Rs Rd
Performs 8-bit × 8-bit unsigned multiplication on data in two general
registers, providing a 16-bit result.
DIVXU BRd ÷ Rs Rd
Performs 16-bit ÷ 8-bit unsigned division on data in two general registers,
providing an 8-bit quotient and 8-bit remainder.
CMP B/W Rd Rs, Rd #imm
Compares data in a general register with data in another general register
or with immediate data. Word data can be compared only between two
general registers.
NEG B0 Rd Rd
Obtains the two’s complement (arithmetic complement) of data in a
general register.
Note: Size: operand size
B: Byte
W: Word