Bscc branch to subroutine conditionally bscc – Motorola DSP96002 User Manual

Page 237

Advertising
background image

MOTOROLA

DSP96002 USER’S MANUAL

A - 49

BScc

Branch to Subroutine Conditionally

BScc

Operation:

If cc, then PC

SSH; SR

SSL; PC+xx

PC

else

PC + 1

PC

If cc, then PC

SSH; SR

SSL; PC+xxxx

PC

else

PC + 1

PC

If cc, then PC

SSH; SR

SSL; PC+Rn

PC

else

PC + 1

PC

Assembler Syntax:

BScc label (short)

BScc label

BScc Rn

Description:

If the specified condition is true, the address of the instruction immediately following the BScc instruction

and the status register are pushed onto the stack. Program execution then continues at location PC+dis-

placement. The PC contains the address of the next instruction. If the specified condition is false, the PC

is incremented and program execution continues sequentially. The displacement is a 2’s complement 32-

bit integer that represents the relative distance from the current PC to the destination PC. Short Displace-

ment, Long Displacement and Address Register PC Relative addressing modes may be used. The Short

Displacement 15-bit data is sign extended to form the PC relative displacement. See Section A.10 for

restrictions.

"cc" may specify the following conditions:

Mnemonic

Condition

CC (HS) - carry clear (higher or same)

C = 0

CS (LO) - carry set (lower)

C = 1

EQ

- equal

Z = 1

GE

- greater or equal

N && V = 0

GT

- greater than

Z v (N && V) = 0

HI

- higher

Z v C = 0

LE

- less or equal

Z v (N && V) = 1

LS

- lower or same

Z v C = 1

LT

- less than

N && V = 1

MI

- minus

N = 1

NE(Q)

- not equal

Z = 0

PL

- plus

N = 0

VC

- overflow clear

V = 0

VS

- overflow set

V = 1

CCR Condition Codes: Not affected.

Advertising