30
2.5.2
Arithmetic Operations
Table 2.5 describes the arithmetic instructions.
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 by 1.
ADDS SUBS
W
Rd
±
1
→
Rd, Rd
±
2
→
Rd
Adds or subtracts 1 or 2 to or from a general register
DAA DAS
B
Rd decimal adjust
→
Rd
Decimal-adjusts (adjusts to 4-bit BCD) an addition or subtraction
result in a general register by referring to the CCR
MULXU
B
Rd
×
Rs
→
Rd
Performs 8-bit
×
8-bit unsigned multiplication on data in two
general registers, providing a 16-bit result
DIVXU
B
Rd
÷
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, and indicates the result in the
CCR. Word data can be compared only between two general
registers.
NEG
B
0 – Rd
→
Rd
Obtains the two’s complement (arithmetic complement) of data in a
general register
Notes:
*
Size: Operand size
B:
Byte
W:
Word