EasyManuals Logo
Home>Renesas>Motherboard>RL78/G10

Renesas RL78/G10 User Manual

Renesas RL78/G10
637 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #579 background imageLoading...
Page #579 background image
RL78/G10 CHAPTER 22 BCD CORRECTION CIRCUIT
R01UH0384EJ0311 Rev. 3.11 562
Dec 22, 2016
22.3 BCD Correction Circuit Operation
The basic operation of the BCD correction circuit is as follows.
(1) Addition: Calculating the result of adding a BCD code value and another BCD code value by using a
BCD code value
<1> The BCD code value to which addition is performed is stored in the A register.
<2> By adding the value of the A register and the second operand (value of one more BCD code to be added) as
are in binary, the binary operation result is stored in the A register and the correction value is stored in the
BCD correction result register (BCDADJ).
<3> Decimal correction is performed by adding in binary the value of the A register (addition result in binary) and
the BCDADJ register (correction value), and the correction result is stored in the A register and CY flag.
Caution The value read from the BCDADJ register varies depending on the value of the A register
when it is read and those of the CY and AC flags. Therefore, execute the instruction <3>
after the instruction <2> instead of executing any other instructions. To perform BCD
correction in the interrupt enabled state, saving and restoring the A register is required
within the interrupt function. PSW (CY flag and AC flag) is restored by the RETI instruction.
An example is shown below.
Examples 1: 99 + 89 = 188
Instruction A Register CY Flag AC Flag BCDADJ
Register
MOV A, #99H ; <1>
99H
− − −
ADD A, #89H ; <2>
22H 1 1 66H
ADD A, !BCDADJ ; <3>
88H 1 0
−
Examples 2: 85 + 15 = 100
Instruction A Register CY Flag AC Flag BCDADJ
Register
MOV A, #85H ; <1>
85H
− − −
ADD A, #15H ; <2>
9AH 0 0 66H
ADD A, !BCDADJ ; <3>
00H 1 1
−
Examples 3: 80 + 80 = 160
Instruction A Register CY Flag AC Flag BCDADJ
Register
MOV A, #80H ; <1>
80H
− − −
ADD A, #80H ; <2>
00H 1 0 60H
ADD A, !BCDADJ ; <3>
60H 1 0
−

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Renesas RL78/G10 and is the answer not in the manual?

Renesas RL78/G10 Specifications

General IconGeneral
BrandRenesas
ModelRL78/G10
CategoryMotherboard
LanguageEnglish

Related product manuals