INSTRUCTION SET

S3C84E5/C84E9/P84E9

 

 

DECW — Decrement Word

DECW

dst

 

Operation:

dst

dst – 1

 

The contents of the destination location (which must be an even address) and the operand

 

following that location are treated as a single 16-bit value that is decremented by one.

Flags:

C:

Unaffected.

 

Z: Set if the result is "0"; cleared otherwise.

 

S: Set if the result is negative; cleared otherwise.

 

V: Set if arithmetic overflow occurred; cleared otherwise.

 

D:

Unaffected.

 

H:

Unaffected.

Format:

 

Bytes Cycles Opcode

Addr Mode

(Hex)

dst

opc

dst

2

8

80

RR

 

8

81

IR

Examples: Given: R0 = 12H, R1 = 34H, R2 = 30H, register 30H = 0FH, and register 31H = 21H:

DECW

RR0

R0 = 12H, R1 = 33H

DECW

@R2

Register 30H = 0FH, register 31H = 20H

In the first example, the destination register R0 contains the value 12H and the register R1 the value 34H. The statement "DECW RR0" addresses R0 and the following operand R1 as a 16-bit word and decrements the value of R1 by one, leaving the value 33H.

NOTE: A system malfunction may occur if you use a Zero flag (FLAGS.6) result together with a DECW instruction. To avoid this problem, it is recommended to use DECW as shown in the following example.

LOOP DECW RR0

LD R2,R1

OR R2,R0

JR NZ,LOOP

6-36

Page 163
Image 163
Samsung S3C84E5 user manual Decw Decrement Word, Loop Decw RR0, Jr Nz,Loop