
Instruction Set Description
4.6.2.29 JN
JN
Jump if negative
JN label
Syntax
Operation
If N = 1: PC + (2 × Offset)
→
PC
If N = 0: execute following instruction
Description
The negative bit N in the SR 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
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.
162
CPUX
SLAU272C – May 2011 – Revised November 2013
Copyright © 2011–2013, Texas Instruments Incorporated