A-127
INSTRUCTION SET REFERENCE
[Encoding]
Hex Code in:
Binary Mode = [A5][Encoding]
Source Mode = [Encoding]
Operation:
SUB
(Rm)
←
(Rm) – ((DRk))
SUBB A,<src–byte>
Function:
Subtract with borrow
Description:
SUBB subtracts the specified variable and the CY flag together from the accumulator,
leaving the result in the accumulator. SUBB sets the CY (borrow) flag if a borrow is needed
for bit 7, and clears CY otherwise. (If CY was set before executing a SUBB instruction, this
indicates that a borrow was needed for the previous step in a multiple precision subtraction,
so the CY flag is subtracted from the accumulator along with the source operand.) AC is set
if a borrow is needed for bit 3, and cleared otherwise. OV is set if a borrow is needed into bit
6, but not into bit 7, or into bit 7, but not bit 6.
When subtracting signed integers the OV flag indicates a negative number produced when a
negative value is subtracted from a positive value, or a positive result when a positive
number is subtracted from a negative number.
Bit 6 and bit 7 in this description refer to the most significant byte of the operand (8, 16, or 32
bit).
The source operand allows four addressing modes: register, direct, register-indirect, or
immediate.
Flags:
Example:
The accumulator contains 0C9H (11001001B), register 2 contains 54H (01010100B), and
the CY flag is set. After executing the instruction
SUBB A,R2
the accumulator contains 74H (01110100B), the CY and AC flags are clear, and the OV flag
is set.
Notice that 0C9H minus 54H is 75H. The difference between this and the above result is due
to the CY (borrow) flag being set before the operation. If the state of the carry is not known
before starting a single or multiple-precision subtraction, it should be explicitly cleared by a
CLR CY instruction.
Variations
SUBB A,#data
Binary Mode
Source Mode
Bytes:
2
2
States:
1
1
1 0 0 1
1 1 1 0
u u u u
1 0 1 1
s s s s
0 0 0 0
CY
AC
OV
N
Z
✓
✓
✓
✓
✓
Summary of Contents for 8XC251SA
Page 2: ......
Page 3: ...May 1996 8XC251SA 8XC251SB 8XC251SP 8XC251SQ Embedded Microcontroller User s Manual...
Page 18: ......
Page 19: ...1 Guide to This Manual...
Page 20: ......
Page 30: ......
Page 31: ...2 Architectural Overview...
Page 32: ......
Page 41: ...3 Address Spaces...
Page 42: ......
Page 63: ...4 Device Configuration...
Page 64: ......
Page 81: ...5 Programming...
Page 82: ......
Page 102: ......
Page 103: ...6 Interrupt System...
Page 104: ......
Page 120: ......
Page 121: ...7 Input Output Ports...
Page 122: ......
Page 132: ......
Page 133: ...8 Timer Counters and Watchdog Timer...
Page 134: ......
Page 153: ...9 Programmable Counter Array...
Page 154: ......
Page 170: ......
Page 171: ...10 Serial I O Port...
Page 172: ......
Page 187: ...11 Minimum Hardware Setup...
Page 188: ......
Page 197: ...12 Special Operating Modes...
Page 198: ......
Page 206: ......
Page 207: ...13 External Memory Interface...
Page 208: ......
Page 239: ...14 Programming and Verifying Nonvolatile Memory...
Page 240: ......
Page 250: ......
Page 251: ...A Instruction Set Reference...
Page 252: ......
Page 390: ......
Page 391: ...B Signal Descriptions...
Page 392: ......
Page 400: ......
Page 401: ...C Registers...
Page 402: ......
Page 436: ......
Page 437: ...Glossary...
Page 438: ......
Page 446: ......
Page 447: ...Index...
Page 448: ......
Page 458: ......