62
3.2 Functions
Chapter 3 Functions
[ Instruction Code/Number of Cycles ]
Page=161
Compare
[ Syntax ]
CMP.size (:format) src,dest
[ Description Example ]
[ Selectable src/dest ]
[ Function ]
[ Flag Change ]
CMP
CMP
src
dest
R0L/R0
R0H/R1
R1L/R2
R1H/R3
R0L/R0
R0H/R1
R1L/R2
R1H/R3
A0/A0
*1
A1/A1
*1
[A0]
[A1]
A0/A0
*1
A1/A1
*1
[A0]
[A1]
dsp:8[A0]
dsp:8[A1]
dsp:8[SB]
dsp:8[FB] dsp:8[A0]
dsp:8[A1]
dsp:8[SB]
dsp:8[FB]
dsp:16[A0] dsp:16[A1]
dsp:16[SB]
abs16
dsp:16[A0] dsp:16[A1] dsp:16[SB] abs16
dsp:20[A0] dsp:20[A1]
abs20
#IMM
dsp:20[A0] dsp:20[A1] abs20
SP/SP
R2R0
R3R1
A1A0
R2R0
R3R1
A1A0
(See the next page for
src
/
dest
classified by format.)
CMP.B:S
#10,R0L
CMP.W:G
R0,A0
CMP.W
#–3,R0
CMP.B
#5,Ram:8[FB]
CMP.B
A0,R0L
[ Operation ]
dest – src
CoMPare
• Each flag bit of the flag register varies depending on the result of subtraction of
src
from
dest
.
• If
dest
is an A0 or A1 when the size specifier (.size) you selected is (.B),
src
is zero-expanded to
perform operation in 16 bits. If
src
is an A0 or A1, operation is performed on the 8 low-order bits of A0
or A1.
U
I
O
B
S
Z
D
C
Conditions
O :
The flag is set when a signed operation resulted in exc32767 (.W) or –32768 (.W), or
+127 (.B) or –128 (.B); otherwise cleared.
S :
The flag is set when the operation resulted in MSB = 1; otherwise cleared.
Z :
The flag is set when the operation resulted in 0; otherwise cleared.
C :
The flag is set when an unsigned operation resulted in any value equal to or greater than 0;
otherwise cleared.
; A0’s 8 low-order bits and R0L are compared.
G , Q , S (Can be specified)
B , W
Flag
Change
*1 If you specify (.B) for the size specifier (.size), you cannot choose A0 or A1 for
src
and
dest
simulta-
neously.
Summary of Contents for R8C/Tiny Series
Page 50: ...Chapter 3 Functions 3 1 Guide to This Chapter 3 2 Functions...
Page 151: ...134 Chapter 3 Functions 3 2 Functions Blank for page layout...
Page 278: ...Chapter 6 Calculation Number of Cycles 6 1 Instruction queue buffer...
Page 297: ...R8C Tiny Series Software Manual 2 6 2 Ote machi Chiyoda ku Tokyo 100 0004 Japan...