Binary Coded Decimal (BCD) is the bridge between human-readable base-10 numbers and the base-2 reality of digital logic. Instead of converting an entire multi-digit number into one long binary string, BCD isolates each decimal digit (0 through 9) and assigns it a dedicated 4-bit binary block. If you are wiring up a 7-segment display, debugging a digital clock, or designing an ALU (Arithmetic Logic Unit), you need the exact bit mappings at your fingertips.
The standard 8421 BCD encoding maps decimal 0 to 0000 and decimal 9 to 1001. However, depending on your specific IC family or arithmetic requirement, you might need 2421 (Aiken) or Excess-3 (Stibitz) variants. Below is the master reference chart, followed by the hardware realities that a pure math table leaves out.
The Master Binary Coded Decimal Chart
How to read this table: The 'Decimal' column is your target human-readable value. The '8421 BCD' column represents the standard weighting scheme (where the four bits represent values of 8, 4, 2, and 1 from left to right), which is the standard defined in digital logic nomenclature (formalized in references like the IEEE Standard Dictionary of Electrical and Electronics Terms and standard IC datasheets). The '2421' and 'Excess-3' columns represent alternative weighting schemes used in specific arithmetic circuits. Bookmark-friendly quick-jumps: For standard 7-segment display wiring, you will query 0 (blanking/zero-suppression), 5 (mid-scale testing), and 9 (maximum valid state) most frequently.
| Decimal | 8421 BCD (Standard) | 2421 BCD (Aiken) | Excess-3 (Stibitz) |
|---|---|---|---|
| 0 | 0000 | 0000 | 0011 |
| 1 | 0001 | 0001 | 0100 |
| 2 | 0010 | 0010 | 0101 |
| 3 | 0011 | 0011 | 0110 |
| 4 | 0100 | 0100 | 0111 |
| 5 | 0101 | 1011 | 1000 |
| 6 | 0110 | 1100 | 1001 |
| 7 | 0111 | 1101 | 1010 |
| 8 | 1000 | 1110 | 1011 |
| 9 | 1001 | 1111 | 1100 |
Which Encoding Column Applies to Your Installation?
When looking at the multi-variant table above, determining which column applies to your installation depends entirely on your target IC and arithmetic goal.
- Choose 8421 BCD when: You are driving 7-segment displays using standard decoder ICs like the Texas Instruments SN74LS47 (common-anode) or the ON Semiconductor MC14511B (common-cathode). It is also the default for microcontroller RTC (Real-Time Clock) modules that output time in BCD format.
- Choose Excess-3 when: You are designing a custom digital adder/subtractor on an FPGA. Because Excess-3 is self-complementing, calculating the 9's complement of a number requires only simple NOT gates, saving silicon area and propagation delay in ALU design.
- Choose 2421 (Aiken) when: You are working with legacy electromechanical calculators or specific rounding circuits where the symmetrical weighting (0-4 start with 0, 5-9 start with 1) simplifies the carry-propagation logic.
Invalid States: How 'Don't Care' Rows Modify Logic Derating
In wire sizing, derating reduces ampacity based on ambient heat. In BCD logic design, 'derating' the base truth table refers to how the invalid state rows (10 through 15) modify your Karnaugh map (K-map) simplifications.
Because 4 bits can represent 16 states (0000 to 1111) and BCD only uses 10 of them, the binary inputs from 1010 (decimal 10) to 1111 (decimal 15) are mathematically invalid in standard BCD. When you are writing the boolean equations for a custom BCD-to-7-segment decoder in Verilog or VHDL, you do not force these invalid states to output 0000000. Instead, you treat them as 'Don't Care' (X) conditions.
By marking rows 10 through 15 as 'X' in your K-map, you can group them with your valid 0-9 states to form larger, power-of-two loops. This 'derates' the complexity of your final boolean expression, reducing the number of AND/OR gates required in silicon. If you force the invalid states to output zero, your logic equations will balloon in complexity, increasing propagation delay and power consumption.
What the Chart Cannot Tell You: Silicon and Pinout Realities
A pure mathematical BCD chart is blind to silicon realities. What the table cannot tell you is the propagation delay, voltage thresholds, and control pin behavior of the physical ICs you are wiring on the bench. Here is the hardware context you actually need to finish your build:
| Parameter | 74LS47 (TTL) | CD4511 / MC14511 (CMOS) |
|---|---|---|
| Display Type | Common-Anode (Sinks current) | Common-Cathode (Sources current) |
| Output Logic | Active-LOW | Active-HIGH |
| Supply Voltage (VCC) | 4.75V to 5.25V (Strict 5V) | 3V to 15V (Wide range) |
| Max Segment Current | ~24mA (per segment) | ~25mA (at 5V), higher at 12V |
| Lamp Test (LT) Pin | Active-LOW (Pull to GND to test) | Active-LOW (Pull to GND to test) |
Troubleshooting the 'Blank Display' Syndrome
The most common bench failure when wiring a BCD decoder is a completely dark 7-segment display, even when the BCD inputs are correctly set to 0000 (Decimal 0). Before you blame the IC, check these three hardware realities that the BCD chart omits:
- Floating Blanking Input (BI/RBI): On the CD4511, the Blanking Input (BI) is active-LOW. If you leave this pin unconnected (floating) on a breadboard, CMOS noise can pull it LOW, instantly blanking the display. Fix: Tie BI to VCC with a 10kΩ pull-up resistor or wire it directly to VCC.
- Lamp Test (LT) Conflict: The LT pin forces all segments ON when pulled LOW. If it is floating, it might trigger randomly. Fix: Tie LT to VCC.
- Current Limiting Resistors: The BCD chart gives you logic states, not current limits. If you wire a CD4511 directly to a 7-segment display without inline resistors, you will exceed the 25mA per-segment limit, causing the IC to overheat and the LED segments to dim or burn out. Fix: Place a 220Ω to 330Ω resistor on each of the 7 segment lines (a-g).
Mastering BCD requires treating the mathematical chart as just the starting point. The 8421 table gives you the logic map, but understanding the invalid states, the self-complementing alternatives, and the strict pinout requirements of your specific decoder IC is what actually gets the digits lighting up on your workbench.






