
Instruction Set Description
4.6.3.32 SUBX
SUBX.A
Subtract source address-word from destination address-word
SUBX.[W]
Subtract source word from destination word
SUBX.B
Subtract source byte from destination byte
SUBX.A src,dst
Syntax
SUBX src,dst
or
SUBX.W src,dst
SUBX.B src,dst
Operation
(.not. src) + 1 + dst
→
dst or dst – src
→
dst
Description
The source operand is subtracted from the destination operand. This is done by adding
the 1s complement of the 1 to the destination. The source operand is not
affected. The result is written to the destination operand. Both operands may be located
in the full address space.
Status Bits
N:
Set if result is negative (src > dst), reset if positive (src
≤
dst)
Z:
Set if result is zero (src = dst), reset otherwise (src
≠
dst)
C:
Set if there is a carry from the MSB, reset otherwise
V:
Set if the subtraction of a negative source operand from a positive destination
operand delivers a negative result, or if the subtraction of a positive source operand
from a negative destination operand delivers a positive result, reset otherwise (no
overflow)
Mode Bits
OSCOFF, CPUOFF, and GIE are not affected.
Example
A 20-bit constant 87654h is subtracted from EDE (LSBs) and EDE+2 (MSBs).
SUBX.A
#87654h,EDE
; Subtract 87654h from EDE+2|EDE
Example
A table word pointed to by R5 (20-bit address) is subtracted from R7. Jump to label
TONI if R7 contains zero after the instruction. R5 is auto-incremented by two. R7.19:16 =
0.
SUBX.W
@R5+,R7
; Subtract table number from R7. R5 + 2
JZ
TONI
; R7 = @R5 (before subtraction)
...
; R7 <> @R5 (before subtraction)
Example
Byte CNT is subtracted from the byte R12 points to in the full address space. Address of
CNT is within PC ± 512 K.
SUBX.B
CNT,0(R12)
; Subtract CNT from @R12
Note: Use SUBA for the following two cases for better density and execution.
SUBX.A
Rsrc,Rdst
SUBX.A
#imm20,Rdst
221
SLAU272C – May 2011 – Revised November 2013
CPUX
Copyright © 2011–2013, Texas Instruments Incorporated