4 SOUrCE filES
(1) instructions (Mnemonics and Operands)
An instruction to the S1C17 Core is generally composed of <Mnemonic> + <Operand>. Some instructions do
not contain an operand.
general notation forms of instructions
General forms: <Mnemonic>
<Mnemonic> tab or space <Operand>
<Mnemonic> tab or space <Operand 1>,<Operand 2>
Examples:
nop
call
ld
There is no restriction as to where the description of a mnemonic may begin in a line. A tab or space
preceding a mnemonic is ignored. Generally, mnemonics are justified left by tab setting.
An instruction containing an operand needs to be broken with one or more tabs or spaces between the
mnemonic and the operand. If there are plural operands, the operands are separated from each other with
one comma (,). Space between operands is ignored.
The elements of operands will be described further below.
Types of mnemonics
The following S1C17 Core instructions can be used in the S1C17 Family:
ld.b
ld.ub
add
add/c
adc
adc/c
sub.a
sub.a/c
cmp
cmp/c
cmc
cmc/c
and
and/c
xor
xor/c
sr
sa
cv.ab
cv.as
jpr
jpr.d
jrge
jrge.d
jrugt
jrugt.d
jrule
jrule.d
call
call.d
int
intl
ext
nop
ld.cw
ld.ca
Refer to the "S1C17 Core Manual" for details of each instruction.
restrictions on characters
Mnemonics can be written in uppercase (A–Z) characters, lowercase (a–z) characters, or both. For example,
"ld", "LD", and "Ld" are all accepted as "ld" instructions.
For purposes of discrimination from symbols, this manual uses lowercase characters.
More will be said about operands later.
4-6
SUB1
%r0,0x4
ld
ld.a
add/nc
add.a
adc/nc
sub
sub.a/nc
sbc
cmp/nc
cmp.a
cmc/nc
and/nc
or
xor/nc
not
sl
swap
cv.al
cv.la
jpa
ipa.d
jrlt
jrlt.d
jruge
jruge.d
jreq
jreq.d
calla
calla.d
reti
reti.d
halt
slp
ld.cf
EPSOn
add.a/c
add.a/nc
sub/c
sub/nc
sbc/c
sbc/nc
cmp.a/c
cmp.a/nc
or/c
or/nc
not/c
not/nc
cv.ls
jrgt
jrgt.d
jrle
jrle.d
jrult
jrult.d
jrne
jrne.d
ret
ret.d
brk
retd
ei
di
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
S5U1C17001C ManUal
Need help?
Do you have a question about the S5U1C17001C and is the answer not in the manual?