beautypg.com

Cmp %r,[%ir] cmp %r,[%ir – Epson S1C63000 User Manual

Page 91

background image

S1C63000 CORE CPU MANUAL

EPSON

85

CHAPTER 4: INSTRUCTION SET

CMP %r,[%ir]

CMP %r,[%ir]+

Compare r reg. with location [ir reg.]

1 cycle

Function:

r - [ir]
Subtracts the content of the data memory addressed by the ir register (X or Y) from the content
of the r register (A or B). It changes the flags (Z and C), but does not change the content of the
register.

Code:

Mnemonic

MSB

LSB

CMP %A,[%X]

1

1

1

1

0

0

1

1

0

0

0

0

0

1E60H

CMP %A,[%Y]

1

1

1

1

0

0

1

1

0

0

0

1

0

1E62H

CMP %B,[%X]

1

1

1

1

0

0

1

1

0

0

1

0

0

1E64H

CMP %B,[%Y]

1

1

1

1

0

0

1

1

0

0

1

1

0

1E66H

Flags:

E

I

C

Z

Mode:

Src: Register indirect
Dst: Register direct
Extended addressing: Valid

Extended

LDB

%EXT,imm8

operation:

CMP %r,[%X]

r - [00imm8] (00imm8 = 0000H + 00H to FFH)

LDB

%EXT,imm8

CMP %r,[%Y]

r - [FFimm8] (FFimm8 = FF00H + 00H to FFH)

Compare r reg. with location [ir reg.] and increment ir reg.

1 cycle

Function:

r - [ir], ir

ir + 1

Subtracts the content of the data memory addressed by the ir register (X or Y) from the content
of the r register (A or B). It changes the flags (Z and C), but does not change the content of the
register. Then increments the ir register (X or Y). The increment result of the ir register does not
affect the flags.

Code:

Mnemonic

MSB

LSB

CMP %A,[%X]+

1

1

1

1

0

0

1

1

0

0

0

0

1

1E61H

CMP %A,[%Y]+

1

1

1

1

0

0

1

1

0

0

0

1

1

1E63H

CMP %B,[%X]+

1

1

1

1

0

0

1

1

0

0

1

0

1

1E65H

CMP %B,[%Y]+

1

1

1

1

0

0

1

1

0

0

1

1

1

1E67H

Flags:

E

I

C

Z

Mode:

Src: Register indirect
Dst: Register direct
Extended addressing: Invalid