Instruction Set Encoding

Instructions

16

15

14

 

13

12

11

10

9

 

8

7

6

5

4

 

3

 

2

1

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MUL {adrs}

1

1

0

 

1

1

1

0

1

 

1

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULR {adrs}

1

1

0

 

1

1

1

0

1

 

0

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULS An[~]

1

1

1

 

0

0

1

1

 

An

1

1

1

1

 

0

 

0

A~

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULAPL An, {adrs}

0

1

1

 

0

1

1

0

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULAPL An[~], An[~], [next A]

1

1

1

 

0

0

next A

 

An

1

1

0

0

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULAPLS An, {adrs}

0

1

1

 

0

1

1

1

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULAPLS An[~], An[~]

1

1

1

 

0

0

1

1

 

An

1

1

0

0

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULSPL An, {adrs}

0

1

1

 

1

1

1

0

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULSPL An[~], An[~] [, next A]

1

1

1

 

0

0

next A

 

An

1

1

0

0

 

0

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULSPLS An, {adrs}

0

1

1

 

1

1

1

1

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULSPLS An[~], An[~]

1

1

1

 

0

0

1

1

 

An

1

1

0

0

 

0

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULTPL An, {adrs}

0

1

1

 

0

0

0

0

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULTPL An[~], An[~] [, next A]

1

1

1

 

0

0

next A

 

An

1

1

0

1

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MUL TPLS An, {adrs}

0

1

1

 

0

0

0

1

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

MULTPLS An[~], An[~]

1

1

1

 

0

0

1

1

 

An

1

1

0

1

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NEGAC An[~], An[~] [, next A]

1

1

1

 

0

0

next A

 

An

0

0

0

0

 

0

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NEGACS An[~], An[~]

1

1

1

 

0

0

1

1

 

An

0

0

0

0

 

0

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NOTAC An[~], An[~] [, next A]

1

1

1

 

0

0

next A

 

An

0

0

0

0

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NOTACS An[~], An[~]

1

1

1

 

0

0

1

1

 

An

0

0

0

0

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

NOP

1

1

1

 

1

1

1

1

1

 

1

1

1

1

1

 

1

 

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OR An, {adrs}

0

1

0

 

0

0

0

0

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OR An[~], An[~], imm16 [, next A]

1

1

1

 

0

0

next A

 

An

1

0

0

0

 

0

 

1

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OR An[~], An~, An [, next A]

1

1

1

 

0

0

next A

 

An

0

1

0

0

 

1

 

0

A~

~A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OR TFn, {flagadrs}

1

0

0

 

1

1

flg

Not

0

 

1

0

 

 

 

flagadrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OR TFn, {cc} [, Rx]

1

0

0

 

1

0

flg

Not

 

 

 

cc

 

 

 

 

Rx

 

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ORB An, imm8

1

0

1

 

0

1

0

0

 

An

 

 

 

imm8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ORS An, {adrs}

0

1

0

 

0

0

0

1

 

An

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

dma16 (for direct) or offset16 (long relative) [see section 4.13]

 

 

4-194

Page 280
Image 280
Texas Instruments MSP50C6xx manual 194