CHAPTER 4: INSTRUCTION SET

CMP %ir,imm8

Compare ir reg. with immediate data imm8

1 cycle

Function: ir - imm8

Subtracts the 8-bit immediate data imm8 from the content of the ir register (X or Y). It changes the flags (Z and C), but does not change the register.

Code:

Mnemonic

 

MSB

 

 

 

 

 

 

 

 

 

LSB

 

 

CMP %X,imm8

 

 

0

 

1

1

1

0

[

FFH

-

imm8

]

0E00H–0EFFH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CMP %Y,imm8

 

 

0

 

1

1

1

1

[

FFH

-

imm8

]

0F00H–0FFFH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Flags:

E

I

 

C

 

 

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mode:

Src: Immediate data

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dst: Register direct

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Extended addressing: Valid

 

 

 

 

 

 

 

 

 

 

 

Extended

LDB

%EXT,imm8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

operation: CMP

%ir,imm8'

 

 

ir - imm16

(upper 8-bit: FFH - imm8, lower 8-bit: imm8')

DEC [addr6]

Decrement location [addr6]

2 cycles

Function: [addr6] ←

[addr6] - 1

 

(addr6 = 0000H–003FH)

Decrements (-1) the content of the data memory addressed by the addr6.

Code:

Mnemonic

 

MSB

 

 

 

 

 

 

 

LSB

 

DEC [addr6]

 

1

 

0

0

0

0

0

0

a5

a4

a3

a2

a1

a0

1000H–103FH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Flags:

E

 

I

C

 

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mode:

6-bit absolute addressing

 

 

 

 

 

 

 

 

 

 

 

Extended addressing: Invalid

 

 

 

 

 

 

 

 

 

 

88

EPSON

S1C63000 CORE CPU MANUAL