![Samsung S3F84B8 Скачать руководство пользователя страница 202](http://html.mh-extra.com/html/samsung/s3f84b8/s3f84b8_user-manual_347832202.webp)
S3F84B8_UM_REV 1.00
6 INSTRUCTION SET
6-80
6.3.68 SUB — SUBTRACT
SUB
dst,src
Operation
: dst
dst – src
Once source operand is subtracted from destination operand, the result is stored in destination.
The contents of source remain unaffected. Subtraction is performed by adding the two’s
complement of source operand to destination operand.
Flags
:
C
: Set if a “borrow” occurred; cleared otherwise.
Z
: Set if the result is “0”; cleared otherwise.
S
: Set if the result is negative; cleared otherwise.
V
: Set if arithmetic overflow occurred, that is, if the operands were of opposite signs and the sign
of result is same as the sign of source operand; cleared otherwise.
D
: Always set to “1”.
H
: Cleared if there is a carry from the most significant bit of low-order four bits of result;
else set to indicate a “borrow”.
Format
:
Bytes Cycles
Opcode
(Hex)
Addr Mode
dst src
opc
dst | src
2
4
22
r
r
6
23
r
lr
opc
src
dst
3
6
24
R
R
6
25
R
IR
opc
dst
src
3
6
26
R
IM
Examples
:
Given R1 = 12H, R2 = 03H, register 01H = 21H, register 02H = 03H, register 03H = 0AH:
SUB R1,R2
R1 = 0FH, R2 = 03H
SUB R1,@R2
R1 = 08H, R2 = 03H
SUB 01H,02H
Register 01H = 1EH, register 02H = 03H
SUB 01H,@02H
Register 01H = 17H, register 02H = 03H
SUB 01H,#90H
Register 01H = 91H; C, S, and V = “1”
SUB 01H,#65H
Register 01H = 0BCH; C and S = “1”, V = “0”
In the first example, if working register R1 contains the value 12H and if register R2 contains the
value 03H, the statement “SUB R1,R2” subtracts source value (03H) from destination value
(12H) and stores the result (0FH) in destination register R1.