Instruction List (5)
S1C63000 Core CPU
Opcode
SUB
SUB
SUB
SBC
SBC
SBC
Operand
%B,[%X]
%B,[%X]+
%B,[%Y]
%B,[%Y]+
[%X],%A
[%X],%B
[%X],imm4
[%X]+,%A
[%X]+,%B
[%X]+,imm4
[%Y],%A
[%Y],%B
[%Y],imm4
[%Y]+,%A
[%Y]+,%B
[%Y]+,imm4
%A,%A
%A,%B
%A,imm4
%A,[%X]
%A,[%X]+
%A,[%Y]
%A,[%Y]+
%B,%A
%B,%B
%B,imm4
%B,[%X]
%B,[%X]+
%B,[%Y]
%B,[%Y]+
[%X],%A
[%X],%B
[%X],imm4
[%X]+,%A
[%X]+,%B
[%X]+,imm4
Basic function
B ← B-[X]
B ← B-[X], X ← X+1
B ← B-[Y]
B ← B-[Y], Y ← Y+1
[X] ← [X]-A
[X] ← [X]-B
[X] ← [X]-imm4
[X] ← [X]-A, X ← X+1
[X] ← [X]-B, X ← X+1
[X] ← [X]-imm4, X ← X+1
[Y] ← [Y]-A
[Y] ← [Y]-B
[Y] ← [Y]-imm4
[Y] ← [Y]-A, Y ← Y+1
[Y] ← [Y]-B, Y ← Y+1
[Y] ← [Y]-imm4, Y ← Y+1
A ← A-A-C
A ← A-B-C
A ← A-imm4-C
A ← A-[X]-C
A ← A-[X]-C, X ← X+1
A ← A-[Y]-C
A ← A-[Y]-C, Y ← Y+1
B ← B-A-C
B ← B-B-C
B ← B-imm4-C
B ← B-[X]-C
B ← B-[X]-C, X ← X+1
B ← B-[Y]-C
B ← B-[Y]-C, Y ← Y+1
[X] ← [X]-A-C
[X] ← [X]-B-C
[X] ← [X]-imm4-C
[X] ← [X]-A-C, X ← X+1
[X] ← [X]-B-C, X ← X+1
[X] ← [X]-imm4-C, X
← X+1
Extended function
(when "LDB %EXT, imm8" is executed)
B ← B-[00imm8]
–
B ← B-[FFimm8]
–
[00imm8] ← [00imm8]-A
[00imm8] ← [00imm8]-B
[00imm8] ← [00imm8]-imm4
–
–
–
[FFimm8] ← [FFimm8]-A
[FFimm8] ← [FFimm8]-B
[FFimm8] ← [FFimm8]-imm4
–
–
–
–
–
–
A ← A-[00imm8]-C
–
A ← A-[FFimm8]-C
–
–
–
–
B ← B-[00imm8]-C
–
B ← B-[FFimm8]-C
–
[00imm8] ← [00imm8]-A-C
[00imm8] ← [00imm8]-B-C
[00imm8] ← [00imm8]-imm4-C
–
–
–
Symbol
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Clk
1
1
1
1
2
2
2
2
2
2
2
2
2
2
2
2
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
C
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
Z
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
↔
E
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
I
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Mnemonic
Classification
Arithmetic
operation
Flags
Remarks