Texas Instruments MSP50C614 Stereo System User Manual


 
Individual Instruction Descriptions
4-174
4.14.79 SUB Subtract
Syntax
[label] name dest, src
,
src1
, [
next A
]] Clock,
clk
Word,
w
With RPT,
clk
Class
SUB A
n
[~], A
n
, {
adrs
} [,
next A
] Table 4–46 Table 4–46 1a
SUB A
n
[~], A
n
[~],
imm16
[,
next A
] 2 2 N/R 2b
SUB A
n
[~], A
n
[~], PH [,
next A
] 1 1 n
R
+3 3
SUB A
n
[~], A
n
, A
n
~ [,
next A
] 1 1 n
R
+3 3
SUB A
n
[~], A
n
~, A
n
[,
next A
] 1 1 n
R
+3 3
SUB R
x
,
imm16
2 2 N/R 4c
SUB R
x
, R5 1 1 N/R 4d
Execution [premodify AP if
mod
specified]
dest
dest
src1
(for two operands)
dest
src
src1
(for three operands)
PC PC +
w
Flags Affected
dest
is A
n
: OF, SF, ZF, CF are set accordingly
dest
is R
x
: RCF, RZF are set accordingly
src1
is {
adrs
}: TAG bit is set accordingly
Opcode
Instructions 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SUB A
n
[~], A
n
, {
adrs
} [,
next A
]
0 0 0 0 ~A
next A
A
n adrs
x
dma16
(for direct) or
offset16
(long relative) [see section 4.13]
SUB A
n
[~], A
n
[~],
imm16
[,
next A
] 1 1 1 0 0
next A
A
n
0 1 0 0 0 1 A~ ~A
SUB A
n
[~], A
n
[~], PH [,
next A
] 1 1 1 0 0
next A
A
n
0 1 1 0 0 0 A~ ~A
SUB A
n
[~], A
n
, A
n
~ [,
next A
] 1 1 1 0 0
next A
A
n
0 0 1 0 0 0 0 ~A
SUB A
n
[~], A
n
~, A
n
[,
next A
] 1 1 1 0 0
next A
A
n
0 0 1 0 0 0 1 ~A
SUB R
x
,
imm16
1 1 1 1 1 1 1 0 0 0 0 1 R
x
0 0
SUB R
x
, R5 1 1 1 1 1 1 1 0 0 1 0 1 R
x
0 0
Description Subtract value of
src
from value of
dest
and store result in
dest
. If three
operands are specified, then subtract value of
src1
from value of
src
(i.e.,
src
-
src1
) and store result in
dest
string. Premodification of accumulator
pointers is allowed with some operand types. Note that subtraction is
performed in 2’s complement and therefore the CF (carry flag) may get set
even when subtracting a smaller value from a larger value.