BCD addition with carry correction Adding 9₁₀ (1001) and 7₁₀ (0111) in BCD generates a carry from the lowest digit. What is the correct correction procedure?

Difficulty: Medium

Correct Answer: Add 0110 to the lowest order digit (since a carry occurred) and prefix the propagated carry with three zeros

Explanation:


Introduction / Context:
Binary-Coded Decimal (BCD) adds decimal digits using 4-bit codes. When a digit-sum exceeds 9 or produces a carry, a correction of 0110 (decimal 6) is applied to restore a valid BCD digit and propagate a proper carry.



Given Data / Assumptions:

  • Digits: 9 (1001) and 7 (0111).
  • Sum of these low-order digits generates a carry.
  • We need the standard BCD correction procedure.


Concept / Approach:
BCD digit addition rules: If the digit result is greater than 1001 or if a carry out of the digit occurs, add 0110 to that digit and propagate the carry to the next higher decimal digit (as 0001 in the next nibble).



Step-by-Step Solution:
Compute raw sum: 1001 + 0111 = 1 0000 (decimal 16) → carry = 1; low nibble = 0000.Apply correction (since carry occurred): add 0110 to the low nibble → 0000 + 0110 = 0110, and the carry becomes the high-order nibble's +1 (prefixed as 0001 at the next digit).Thus the procedure is: correct the lowest digit with +0110 and prefix the propagated carry with three zeros at the next digit.


Verification / Alternative check:
Decimal check: 9 + 7 = 16 → BCD result should be 0001 0110 (16). The correction method yields exactly that.



Why Other Options Are Wrong:
Ignoring the digit or the carry, or adding 0110 to both digits, violates BCD rules and produces invalid codes.


Common Pitfalls:
Forgetting that carry alone (even if nibble is ≤1001) still mandates adding 0110 to the lower nibble for a valid BCD result.



Final Answer:
Add 0110 to the lowest order digit (since a carry occurred) and prefix the propagated carry with three zeros

More Questions from Digital Arithmetic Operations and Circuits

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion