7
DETAILS OF INSTRUCTIONS
62
EPSON
S1C33 FAMILY C33 PE CORE MANUAL
add
%rd
,
%rs
Function
Addition
Standard)
rd
←
rd
+
rs
Extension
1
)
rd
←
rs
+
imm13
Extension
2
)
rd
←
rs
+
imm26
Code
15
12
11
8
7
4
3
0
0
0
1
0
0
0
1
0
r s
r d
0x22__
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Flag
IE C V Z N
–
↔
↔
↔
↔
|
|
|
|
Mode
Src: Register direct
%rs
=
%r0
to
%r15
Dst: Register direct
%rd
=
%r0
to
%r15
CLK
One cycle
Description
(
1
) Standard
add
%rd
,
%rs
;
rd
←
rd
+
rs
The content of the
rs
register is added to the
rd
register.
(
2
) Extension
1
ext
imm13
add
%rd
,
%rs
;
rd
←
rs
+
imm13
The
13
-bit immediate
imm13
is added to the content of the
rs
register after being zero-extended,
and the result is loaded into the
rd
register. The content of the
rs
register is not altered.
(
3
) Extension
2
ext
imm13
; =
imm26
(25:13)
ext
imm13
; =
imm26
(12:0)
add
%rd
,
%rs
;
rd
←
rs
+
imm26
The
26
-bit immediate
imm26
is added to the content of the
rs
register after being zero-extended,
and the result is loaded into the
rd
register. The content of the
rs
register is not altered.
(
4
) Delayed instruction
This instruction may be executed as a delayed 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
)
add %r0,%r0
; r0 = r0 + r0
(
2
)
ext 0x1
ext 0x1fff
add %r1,%r2
; r1 = r2 + 0x3fff