MSP430 Instructions
4-90
16-Bit MSP430X CPU
JN
Jump if Negative
Syntax
JN
label
Operation
If N = 1:
PC + (2
×
Offset)
→
PC
If N = 0:
execute following instruction
Description
The negative bit N in the status register is tested. If it is set, the signed 10-bit
word offset contained in the instruction is multiplied by two, sign extended, and
added to the 20-bit program counter PC. This means a jump in the range -511
to +512 words relative to the PC in the full memory range. If N is reset, the
instruction after the jump is executed.
Status Bits
Status bits are not affected
Mode Bits
OSCOFF, CPUOFF, and GIE are not affected
Example
The byte COUNT is tested. If it is negative, program execution continues at
Label0. Data in lower 64 K, program in full memory range.
TST.B
&COUNT
; Is byte COUNT negative?
JN
Label0
; Yes, proceed at Label0
...
; COUNT
≥
0
Example
R6 is subtracted from R5. If the result is negative, program continues at
Label2. Program in full memory range.
SUB
R6,R5
; R5 − R6 -> R5
JN
Label2
; R5 is negative: R6 > R5 (N = 1)
...
; R5
≥
0. Continue here.
Example
R7 (20-bit counter) is decremented. If its content is below zero, the program
continues at Label4. Program in full memory range.
SUBA
#1,R7
; Decrement R7
JN
Label4
; R7 < 0: Go to Label4
...
; R7
≥
0. Continue here.
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 ...