Datasheet

www.ti.com
Instruction Set Description
4.6.2.46 SUB
SUB[.W] Subtract source word from destination word
SUB.B Subtract source byte from destination byte
Syntax
SUB src,dst or SUB.W src,dst
SUB.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 made by adding
the 1s complement of the source + 1 to the destination. The source operand is not
affected, the result is written to the destination operand.
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 16-bit constant 7654h is subtracted from RAM word EDE.
SUB #7654h,&EDE ; Subtract 7654h from EDE
Example A table word pointed to by R5 (20-bit address) is subtracted from R7. Afterwards, if R7
contains zero, jump to label TONI. R5 is then auto-incremented by 2. R7.19:16 = 0.
SUB @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 byte R12 points to. The address of CNT is within PC ± 32K.
The address R12 points to is in full memory range.
SUB.B CNT,0(R12) ; Subtract CNT from @R12
209
SLAU144JDecember 2004Revised July 2013 CPUX
Submit Documentation Feedback
Copyright © 2004–2013, Texas Instruments Incorporated