8XC251SA, SB, SP, SQ USER’S MANUAL
A-52
Example:
The accumulator contains 56H (01010110B), which represents the packed BCD digits of the
decimal number 56. Register 3 contains 67H (01100111B), which represents the packed
BCD digits of the decimal number 67. The CY flag is set. After executing the instruction
sequence
ADDC A,R3
DA A
the accumulator contains 0BEH (10111110) and the CY and AC flags are clear. The
Decimal Adjust instruction then alters the accumulator to the value 24H (00100100B),
indicating the packed BCD digits of the decimal number 24, the lower two digits of the
decimal sum of 56, 67, and the carry-in. The CY flag is set by the Decimal Adjust instruction,
indicating that a decimal overflow occurred. The true sum of 56, 67, and 1 is 124.
BCD variables can be incremented or decremented by adding 01H or 99H. If the
accumulator contains 30H (representing the digits of 30 decimal), then the instruction
sequence,
ADD A,#99H
DA A
leaves the CY flag set and 29H in the accumulator, since 30 + 99 = 129. The low byte of the
sum can be interpreted to mean 30 – 1 = 29.
Binary Mode
Source Mode
Bytes:
1
1
States:
1
1
Hex Code in:
Binary Mode = [Encoding]
Source Mode = [Encoding]
Operation:
DA
(Contents of accumulator are BCD)
IF [[(A.3:0) > 9] V [(AC) = 1]]
THEN (A.3:0)
←
(A.3:0) + 6
AND
IF [[(A.7:4) > 9] V [(CY) = 1]]
THEN (A.7:4)
←
(A.7:4) + 6
DEC byte
Function:
Decrement
Description:
Decrements the specified byte variable by 1. An original value of 00H underflows to 0FFH.
Four operands addressing modes are allowed: accumulator, register, direct, or register-
indirect.
Note: When this instruction is used to modify an output port, the value used as the original
port data is read from the output data latch, not the input pins.
Flags:
[Encoding]
1 1 0 1
0 1 0 0
CY
AC
OV
N
Z
—
—
—
✓
✓
Содержание 8XC251SA
Страница 2: ......
Страница 3: ...May 1996 8XC251SA 8XC251SB 8XC251SP 8XC251SQ Embedded Microcontroller User s Manual...
Страница 18: ......
Страница 19: ...1 Guide to This Manual...
Страница 20: ......
Страница 30: ......
Страница 31: ...2 Architectural Overview...
Страница 32: ......
Страница 41: ...3 Address Spaces...
Страница 42: ......
Страница 63: ...4 Device Configuration...
Страница 64: ......
Страница 81: ...5 Programming...
Страница 82: ......
Страница 102: ......
Страница 103: ...6 Interrupt System...
Страница 104: ......
Страница 120: ......
Страница 121: ...7 Input Output Ports...
Страница 122: ......
Страница 132: ......
Страница 133: ...8 Timer Counters and Watchdog Timer...
Страница 134: ......
Страница 153: ...9 Programmable Counter Array...
Страница 154: ......
Страница 170: ......
Страница 171: ...10 Serial I O Port...
Страница 172: ......
Страница 187: ...11 Minimum Hardware Setup...
Страница 188: ......
Страница 197: ...12 Special Operating Modes...
Страница 198: ......
Страница 206: ......
Страница 207: ...13 External Memory Interface...
Страница 208: ......
Страница 239: ...14 Programming and Verifying Nonvolatile Memory...
Страница 240: ......
Страница 250: ......
Страница 251: ...A Instruction Set Reference...
Страница 252: ......
Страница 390: ......
Страница 391: ...B Signal Descriptions...
Страница 392: ......
Страница 400: ......
Страница 401: ...C Registers...
Страница 402: ......
Страница 436: ......
Страница 437: ...Glossary...
Страница 438: ......
Страница 446: ......
Страница 447: ...Index...
Страница 448: ......
Страница 458: ......