7 DETAILS OF INSTRUCTIONS
cmp %rd, sign7
Function
16-bit comparison
Standard)
Extension 1) rd(15:0) - sign16
Extension 2) Unusable
15 14 13 12 11 10
Code
1
0
0
|
|
IL
IE
C
Flag
|
– ↔ ↔ ↔ ↔
|
–
Mode
Src:Immediate data (signed)
Dst:Register direct %rd = %r0 to %r7
CLK
One cycle
Description
(1) Standard
cmp
Subtracts the signed 7-bit immediate sign7 from the contents of the rd register, and sets or resets
the flags (C, V, Z and N) according to the results. The sign7 is sign-extended into 16 bits prior
to the operation. The operation is performed in 16-bit size. It does not change the contents of
the rd register.
(2) Extension 1
ext
cmp
Subtracts the signed 16-bit immediate sign16 from the contents of the rd register, and sets or
resets the flags (C, V, Z and N) according to the results. The operation is performed in 16-bit
size. It does not change the contents of the rd register.
(3) Delayed slot instruction
This instruction may be executed as a delayed slot instruction by writing it directly after
a branch instruction with the "d" bit. In this case, extension of the immediate by the ext
instruction cannot be performed.
Example
(1) cmp
(2) ext
cmp
7-20
rd(15:0) - sign7(sign extended)
9
8
7
|
|
1
0
0
r d
|
|
|
|
|
V
Z
N
|
|
|
%rd,sign7
; rd - sign7
imm13
; imm13(8:0) = sign16(15:7)
%rd,sign7
; rd - sign16, sign7 = sign16(6:0)
%r0,0x3f ; Changes the flags according to the results of
; r0 - 0x3f.
0x1ff
%r1,0x7f ; Changes the flags according to the results of
; r1 - 0xffff.
6
5
4
3
2
1
0
sign7
|
|
|
|
|
|
EPSON
S1C17 FAMILY S1C17 CORE MANUAL
Need help?
Do you have a question about the S1C17 Series and is the answer not in the manual?