Extended Instructions
4-122
16-Bit MSP430X CPU
CMPX.A
Compare source address-word and destination address-word
CMPX[.W]
Compare source word and destination word
CMPX.B
Compare source byte and destination byte
Syntax
CMPX.A
src,dst
CMPX
src,dst or CMPX.W
src,dst
CMPX.B
src,dst
Operation
(.not. src) + 1 + dst or dst − src
Description
The source operand is subtracted from the destination operand by adding the
1’s complement of the 1 to the destination. The result affects only the
status bits. 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
Compare EDE with a 20-bit constant 18000h. Jump to label TONI if EDE
equals the constant.
CMPX.A
#018000h,EDE
; Compare EDE with 18000h
JEQ
TONI
; EDE contains 18000h
...
; Not equal
Example
A table word pointed to by R5 (20-bit address) is compared with R7. Jump to
label TONI if R7 contains a lower, signed, 16-bit number.
CMPX.W
@R5,R7
; Compare two signed numbers
JL
TONI
; R7 < @R5
...
; R7 >= @R5
Example
A table byte pointed to by R5 (20-bit address) is compared to the input in I/O
Port1. Jump to label TONI if the values are equal. The next table byte is
addressed.
CMPX.B
@R5+,&P1IN
; Compare P1 bits with table. R5 + 1
JEQ
TONI
; Equal contents
...
; Not equal
Note: Use CMPA for the following two cases for better density and execution.
CMPA
Rsrc,Rdst
or
CMPA
#imm20,Rdst
Summary of Contents for MSP430x4xx Family
Page 1: ...MSP430x4xx Family 2007 Mixed Signal Products User s Guide SLAU056G ...
Page 2: ......
Page 6: ...vi ...
Page 114: ...3 76 RISC 16 Bit CPU ...
Page 304: ...5 20 FLL Clock Module ...
Page 340: ...7 8 Supply Voltage Supervisor ...
Page 348: ...8 8 16 Bit Hardware Multiplier ...
Page 372: ...9 24 32 Bit Hardware Multiplier ...
Page 400: ...10 28 DMA Controller ...
Page 428: ...13 10 Basic Timer1 ...
Page 466: ...15 24 Timer_A ...
Page 522: ...17 30 USART Peripheral Interface UART Mode ...
Page 544: ...18 22 USART Peripheral Interface SPI Mode ...
Page 672: ...23 12 Comparator_A ...
Page 692: ...24 20 LCD Controller ...
Page 746: ...26 28 ADC12 ...