Individual Instruction Descriptions

4.14.12 CMPS

 

 

Compare Two Strings

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Syntax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[label]

name

 

src, src1

 

 

 

 

 

 

Clock, clk

 

Word, w

 

 

With RPT, clk

 

Class

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPS

 

An, {adrs}

 

 

 

 

 

 

 

 

Table 4–46

 

 

 

 

 

 

Table 4–46

 

 

1b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPS

 

An[~], pma16

 

 

 

 

 

 

nS+4

 

 

 

2

 

 

 

 

 

N/R

 

 

 

 

2b

 

 

CMPS

 

An, An~

 

 

 

 

 

 

 

nS+3

 

 

 

1

 

 

 

 

 

nR+3

 

 

 

 

3

 

 

CMPS

An~, An

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Execution

status flags set by

(src

src1) string

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PC PC + w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Flags Affected

src is An:

 

 

 

 

OF, SF, ZF, CF are set accordingly

 

 

 

 

 

 

 

 

 

src1 is {adrs}:

 

 

 

TAG bit is set accordingly

 

 

 

 

 

 

 

 

 

 

 

 

Opcode

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Instructions

 

16

 

15

14

13

 

12

11

10

 

9

 

8

 

7

 

6

 

5

 

4

 

3

2

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPB An, {adrs}

 

0

 

1

0

1

 

1

0

1

 

An

 

 

 

 

 

 

 

 

 

 

adrs

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPS An[~], pma16

 

1

 

1

1

0

 

0

1

1

 

An

 

 

0

 

1

 

1

 

0

 

0

1

 

A~

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

pma16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPS An, An~

 

1

 

1

1

0

 

0

1

1

 

An

 

 

1

 

0

 

0

 

0

 

0

0

 

0

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMPS An~, An

 

 

1

 

1

1

0

 

0

1

1

 

An

 

 

1

 

0

 

0

 

0

 

0

0

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Description

Subtract src1 string from src string and only modify the status flags. Content

 

 

 

of accumulators are not changed.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

See Also

CMPB, CMP, Jcc, Ccc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Example 4.14.12.1

CMPS A0, *R0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Compare string at data memory location pointed by R0 to A0 and change the STAT flags accordingly.

Example 4.14.12.2

CMPS A1~, 0x1400

Compare string at program memory location 0x1400 to A1~ and change the STAT flags accordingly.

Example 4.14.12.3

CMPS A2, A2~

Compare accumulator string A2 to accumulator string A2~ and change the STAT flags accordingly.

4-94

Page 180
Image 180
Texas Instruments MSP50C6xx manual Cmps Compare Two Strings, PC PC + w Flags Affected, Cmps A1~, Cmps A2, A2~