Samsung S3C80A5B User Manual page 140

8-bit cmos
Table of Contents

Advertisement

INSTRUCTION SET
DA
— Decimal Adjust
DA
(Continued)
Example:
Given: Working register R0 contains the value 15 (BCD), working register R1 contains
27 (BCD), and address 27H contains 46 (BCD):
ADD
DA
If addition is performed using the BCD values 15 and 27, the result should be 42. The sum is
incorrect, however, when the binary representations are added in the destination location using
standard binary arithmetic:
+ 0 0 1 0
The DA instruction adjusts this result so that the correct BCD representation is obtained:
+ 0 0 0 0
Assuming the same values given above, the statements
SUB
DA @R1
leave the value 31 (BCD) in address 27H (@R1).
6-34
R1,R0
;
R1
;
0 0 0 1
0 1 0 1
0 1 1 1
0 0 1 1
1 1 0 0
=
0 0 1 1
1 1 0 0
0 1 1 0
0 1 0 0
0 0 1 0
=
C ← "0", H ← "0", Bits 4–7 = 3, bits 0–3 = 1
27H,R0 ;
@R1 ← 31–0
;
C ← "0", H ← "0", Bits 4–7 = 3, bits 0–3 = C, R1 ← 3CH
R1 ← 3CH + 06
15
27
3CH
42
S3C80A5B

Advertisement

Table of Contents
loading

Table of Contents