Extended Instructions
4-149
16-Bit MSP430X CPU
SUBCX.A
Subtract source address-word with carry from destination address-word
SUBCX[.W]
Subtract source word with carry from destination word
SUBCX.B
Subtract source byte with carry from destination byte
Syntax
SUBCX.A
src,dst
SUBCX
src,dst or SUBCX.W src,dst
SUBCX.B
src,dst
Operation
(.not. src) + C + dst
→
dst
or dst − (src − 1) + C
→
dst
Description
The source operand is subtracted from the destination operand. This is made
by adding the 1’s complement of the carry 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 (MSB = 1), reset if positive (MSB = 0)
Z:
Set if result is zero, reset otherwise
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 des-
tination operand delivers a negative result, or if the subtraction of a posi-
tive 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 R5 with the carry from the
previous instruction.
SUBCX.A
#87654h,R5
; Subtract C from R5
Example
A 48-bit number (3 words) pointed to by R5 (20-bit address) is subtracted from
a 48-bit counter in RAM, pointed to by R7. R5 auto-increments to point to the
next 48-bit number.
SUBX.W
@R5+,0(R7)
; Subtract LSBs. R5 + 2
SUBCX.W @R5+,2(R7)
; Subtract MIDs with C. R5 + 2
SUBCX.W @R5+,4(R7)
; Subtract MSBs with C. R5 + 2
Example
Byte CNT is subtracted from the byte, R12 points to. The carry of the previous
instruction is used. 20-bit addresses.
SUBCX.B
&CNT,0(R12)
; Subtract byte CNT from @R12
Содержание MSP430x4xx Family
Страница 1: ...MSP430x4xx Family 2007 Mixed Signal Products User s Guide SLAU056G ...
Страница 2: ......
Страница 6: ...vi ...
Страница 114: ...3 76 RISC 16 Bit CPU ...
Страница 304: ...5 20 FLL Clock Module ...
Страница 340: ...7 8 Supply Voltage Supervisor ...
Страница 348: ...8 8 16 Bit Hardware Multiplier ...
Страница 372: ...9 24 32 Bit Hardware Multiplier ...
Страница 400: ...10 28 DMA Controller ...
Страница 428: ...13 10 Basic Timer1 ...
Страница 466: ...15 24 Timer_A ...
Страница 522: ...17 30 USART Peripheral Interface UART Mode ...
Страница 544: ...18 22 USART Peripheral Interface SPI Mode ...
Страница 672: ...23 12 Comparator_A ...
Страница 692: ...24 20 LCD Controller ...
Страница 746: ...26 28 ADC12 ...