MSP430 Instructions
4-75
16-Bit MSP430X CPU
CMP[.W]
Compare source word and destination word
CMP.B
Compare source byte and destination byte
Syntax
CMP
src,dst or CMP.W src,dst
CMP.B
src,dst
Operation
(.not.src) + 1 + dst or dst − src
Description
The source operand is subtracted from the destination operand. This is made
by adding the 1’s complement of the 1 to the destination. The result
affects only the status bits in SR.
Register Mode: the register bits Rdst.19:16 (.W) resp. Rdst. 19:8 (.B) are not
cleared.
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 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
Compare word EDE
with a 16-bit constant 1800h. Jump to label TONI if
EDE equals the constant. The address of EDE is within PC
±
32 K.
CMP
#01800h,EDE
; Compare word EDE with 1800h
JEQ
TONI
; EDE contains 1800h
...
; Not equal
Example
A table word pointed to by (R5 + 10) is compared with R7. Jump to label TONI if
R7 contains a lower, signed 16-bit number. R7.19:16 is not cleared. The
address of the source operand is a 20-bit address in full memory range.
CMP.W 10(R5),R7
; Compare two signed numbers
JL
TONI
; R7 < 10(R5)
...
; R7 >= 10(R5)
Example
A table byte pointed to by R5 (20-bit address) is compared to the value in
output Port1. Jump to label TONI if values are equal. The next table byte is
addressed.
CMP.B @R5+,&P1OUT
; Compare P1 bits with table. R5 + 1
JEQ
TONI
; Equal contents
...
; Not equal
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 ...