A-51
INSTRUCTION SET REFERENCE
Operation:
CPL
(CY)
←
Ø(CY)
CPL bit
Binary Mode
Source Mode
Bytes:
4
3
States:
4†
3†
†If this instruction addresses a port (P
x
,
x
= 0–3), add 2 states.
[Encoding]
Hex Code in:
Binary Mode = [A5][Encoding]
Source Mode = [Encoding]
Operation:
CPL
(bit)
←
Ø(bit)
DA A
Function:
Decimal-adjust accumulator for addition
Description:
Adjusts the 8-bit value in the accumulator that resulted from the earlier addition of two
variables (each in packed-BCD format), producing two 4-bit digits. Any ADD or ADDC
instruction may have been used to perform the addition.
If accumulator bits 3:0 are greater than nine (XXXX1010–XXXX1111), or if the AC flag is set,
six is added to the accumulator, producing the proper BCD digit in the low nibble. This
internal addition sets the CY flag if a carry out of the lowest 4 bits propagated through all
higher bits, but it does not clear the CY flag otherwise.
If the CY flag is now set, or if the upper four bits now exceed nine (1010XXXX–1111XXXX),
these four bits are incremented by six, producing the proper BCD digit in the high nibble.
Again, this sets the CY flag if there was a carry out of the upper four bits, but does not clear
the carry. The CY flag thus indicates if the sum of the original two BCD variables is greater
than 100, allowing multiple-precision decimal addition. The OV flag is not affected.
All of this occurs during one instruction cycle. Essentially, this instruction performs the
decimal conversion by adding 00H, 06H, 60H, or 66H to the accumulator, depending on
initial accumulator and PSW conditions.
Note: DA A cannot simply convert a hexadecimal number in the accumulator to BCD
notation, nor does DA A apply to decimal subtraction.
Flags:
1 0 1 0
1 0 0 1
1 0 1 1
0
y y y
dir addr
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: ......