beautypg.com

Samsung S3F80JB User Manual

Page 175

background image

S3F80JB

INSTRUCTION SET

6-47

JP

Jump

JP

cc,dst

(Conditional)

JP

dst (Unconditional)

Operation:

If cc is true, PC

← dst

The conditional JUMP instruction transfers program control to the destination address if the
condition specified by the condition code (cc) is true; otherwise, the instruction following the JP
instruction is executed. The unconditional JP simply replaces the contents of the PC with the
contents of the specified register pair. Control then passes to the statement addressed by the
PC.

Flags:

No flags are affected.

Format:

(1)

(2)

Bytes Cycles Opcode

(Hex)

Addr Mode

dst

cc | opc

dst

3

8

ccD

DA

cc = 0 to F

opc dst

2 8 30 IRR

NOTES:
1. The 3-byte format is used for a conditional jump and the 2-byte format for an unconditional jump.
2. In the first byte of the three-byte instruction format (conditional jump), the condition code and the

opcode are both four bits.

Examples:

Given: The carry flag (C) = "1", register 00 = 01H, and register 01 = 20H:

JP

C,LABEL_W

→ LABEL_W = 1000H, PC = 1000H

JP

@00H

→ PC = 0120H

The first example shows a conditional JP. Assuming that the carry flag is set to "1", the statement
"JP C,LABEL_W" replaces the contents of the PC with the value 1000H and transfers control to
that location. Had the carry flag not been set, control would then have passed to the statement
immediately following the JP instruction.

The second example shows an unconditional JP. The statement "JP @00" replaces the contents
of the PC with the contents of the register pair 00H and 01H, leaving the value 0120H.