S5U1C17001C ManUal
EPSOn
8-17
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
8 aSSEMBlEr
8
Assemblr
8.6.4 Data Transfer instructions (between Stack and register)
Types and functions of extended instructions
Extended instruction
function
Expansion
sld.b %rd,[%sp+
imm20
] %rd
←
B[%sp+
imm20
]
(with sign extension)
(1)
sld.ub %rd,[%sp+
imm20
] %rd
←
B[%sp+
imm20
]
(with zero extension)
(1)
sld %rd,[%sp+
imm20
] %rd
←
W[%sp+
imm20
]
(1)
sld.a %rd,[%sp+
imm20
] %rd
←
A[%sp+
imm20
](23:0)
, ignored
←
A[%sp+
imm20
](31:24)
(1)
sld.b [%sp+
imm20
],%rs B[%sp+
imm20
]
←
%rs(7:0)
(1)
sld [%sp+
imm20
],%rs W[%sp+
imm20
]
←
%rs(15:0)
(1)
sld.a [%sp+
imm20
],%rs A[%sp+
imm20
](23:0)
←
%rs(23:0)
,
A[%sp+
imm20
](31:24)
←
0
(1)
xld.b %rd,[%sp+
imm24
] %rd
←
B[%sp+
imm24
]
(with sign extension)
(2)
xld.ub %rd,[%sp+
imm24
] %rd
←
B[%sp+
imm24
]
(with zero extension)
(2)
xld %rd,[%sp+
imm24
] %rd
←
W[%sp+
imm24
]
(2)
xld.a %rd,[%sp+
imm24
] %rd
←
A[%sp+
imm24
](23:0)
, ignored
←
A[%sp+
imm24
](31:24)
(2)
xld.b [%sp+
imm24
],%rs B[%sp+
imm24
]
←
%rs(7:0)
(2)
xld [%sp+
imm24
],%rs W[%sp+
imm24
]
←
%rs(15:0)
(2)
xld.a [%sp+
imm24
],%rs A[%sp+
imm24
](23:0)
←
%rs(23:0)
,
A[%sp+
imm20
](31:24)
←
0
(2)
These extended instructions allow you to directly specify a displacement of up to 20 bits/24 bits. Specification
of
imm20
/
imm24
can be omitted.
Basic instructions after expansion
sld.b
,
xld.b
Expanded into the
ld.b
instruction
sld.ub
,
xld.ub
Expanded into the
ld.ub
instruction
sld
,
xld
Expanded into the
ld
instruction
sld.a
,
xld.a
Expanded into the
ld.a
instruction
Expansion formats
If
imm20
/
imm24
is omitted, the
as
assembler assumes that
[%sp+0x0]
is specified as it expands the
instruction.
(1)
s
OP
%rd,[%sp+
imm20
]
(
OP
=
ld.b
,
ld.ub
,
ld
,
ld.a
)
s
OP
[%sp+
imm20
],%rs
(
OP
=
ld.b
,
ld
,
ld.a
)
Example:
sld.a %rd,[%sp+
imm20
]
imm20
≤
0x7f
0x7f <
imm20
ld.a %rd,[%sp+
imm20
(6:0)]
ext
imm20
(19:7)
ld.a %rd,[%sp+
imm20
(6:0)]
(2)
x
OP
%rd,[%sp+
imm24
]
(
OP
=
ld.b
,
ld.ub
,
ld
,
ld.a
)
x
OP
[%sp+
imm24
],%rs
(
OP
=
ld.b
,
ld
,
ld.a
)
Example:
xld.a %rd,[%sp+
imm24
]
imm24
≤
0x7f
0x7f <
imm24
≤
0xfffff
0xfffff <
imm24
ld.a %rd,[%sp+
imm24
(6:0)]
ext
imm24
(19:7)
ld.a %rd,[%sp+
imm24
(6:0)]
ext
imm24
(23:20)
ext
imm24
(19:7)
ld.a %rd,[%sp+
imm24
(6:0)]
Содержание S5U1C17001C
Страница 6: ......
Страница 17: ...1 General S5U1C17001C Manual 1 General ...
Страница 18: ......
Страница 21: ...1 2 Install S5U1C17001C Manual 2 Installation ...
Страница 22: ......
Страница 29: ...3 SoftDev S5U1C17001C Manual 3 Software Development Procedures ...
Страница 30: ......
Страница 103: ...4 SrcFiles S5U1C17001C Manual 4 Source files ...
Страница 104: ......
Страница 121: ...5 IDE S5U1C17001C Manual 5 gnU17 iDE ...
Страница 122: ......
Страница 365: ...6 Compiler S5U1C17001C Manual 6 C Compiler ...
Страница 366: ......
Страница 385: ...7 Library S5U1C17001C Manual 7 library ...
Страница 386: ......
Страница 404: ...7 18 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 7 liBrary THIS PAGE IS BLANK ...
Страница 405: ...8 Assemblr S5U1C17001C Manual 8 assembler ...
Страница 406: ......
Страница 438: ...8 32 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 8 aSSEMBlEr THIS PAGE IS BLANK ...
Страница 439: ...9 Linker S5U1C17001C Manual 9 linker ...
Страница 440: ......
Страница 448: ...9 8 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 9 linkEr THIS PAGE IS BLANK ...
Страница 449: ...10 Debugger S5U1C17001C Manual 10 Debugger ...
Страница 450: ......
Страница 625: ...10 174 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 10 DEBUggEr THIS PAGE IS BLANK ...
Страница 626: ...11 Tools S5U1C17001C Manual 11 Other Tools ...
Страница 627: ......
Страница 695: ...11 68 EPSON S5U1C17001C Manual C Compiler Package for S1C17 Family Ver 1 5 0 11 OTHEr TOOlS THIS PAGE IS BLANK ...
Страница 696: ...S1C17 Family C Compiler Package Quick Reference Reference ...