# Bi-quinary coded decimal

Bi-quinary coded decimal is a numeral encoding scheme used in many abacuses and in some early computers, notably the Colossus. The term bi-quinary indicates that the code comprises both a two-state (bi) and a five-state (quinary) component. The encoding resembles that used by many abacuses, with four beads indicating the five values either from 0 through 4 or from 5 through 9 and another bead indicating which of those ranges (which can alternatively be thought of as +5).
Several human languages, most notably Fula and Wolof also use biquinary systems. For example, the Fula word for 6, jowi e go'o, literally means five [plus] one. Roman numerals use a symbolic, rather than positional, bi-quinary base, even though Latin is completely decimal.
The Korean finger counting system Chisanbop uses a bi-quinary system, where each finger represents a one and a thumb represents a five, allowing one to count from 0 to 99 with two hands.
One advantage of one bi-quinary encoding scheme on digital computers is that it must have two bits set (one in the binary field and one in the quinary field), providing a built-in checksum to verify if the number is valid or not. (Stuck bits happened frequently with computers using mechanical relays.)

## Examples

Several different representations of bi-quinary coded decimal have been used by different machines. The two-state component is encoded as one or two bits, and the five-state component is encoded using three to five bits. Some examples are:
* Roman and Chinese abacuses
* Stibitz relay calculators at Bell Labs from Model II onwards
* FACOM 128 relay calculators at Fujitsu

### IBM 650

The IBM 650 uses seven bits: two bi bits (0 and 5) and five quinary bits (0, 1, 2, 3, 4), with error checking.
Exactly one bi bit and one quinary bit is set in a valid digit. The bi-quinary encoding of the internal workings of the machine are evident in the arrangement of its lights – the bi bits form the top of a T for each digit, and the quinary bits form the vertical stem.
| Value | 05-01234 bits | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 0 | 10-10000 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 1 | 10-01000 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 2 | 10-00100 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 3 | 10-00010 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 4 | 10-00001 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 5 | 01-10000 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 6 | 01-01000 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 7 | 01-00100 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 8 | 01-00010 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |
| 9 | 01-00001 | IBM 650 front panel while running, with active bits just discernible Close-up of IBM 650 indicators while running, with active bits visible |

### Remington Rand 409

The Remington Rand 409 has five bits: one quinary bit (tube) for each of 1, 3, 5, and 7 - only one of these would be on at the time. The fifth bi bit represented 9 if none of the others were on; otherwise it added 1 to the value represented by the other quinary bit. The machine was sold in the two models UNIVAC 60 and UNIVAC 120.
| Value | 1357-9 bits |
| 0 | 0000-0 |
| 1 | 1000-0 |
| 2 | 1000-1 |
| 3 | 0100-0 |
| 4 | 0100-1 |
| 5 | 0010-0 |
| 6 | 0010-1 |
| 7 | 0001-0 |
| 8 | 0001-1 |
| 9 | 0000-1 |

### UNIVAC Solid State

The UNIVAC Solid State uses four bits: one bi bit (5), three binary coded quinary bits (4 2 1) and one parity check bit
| Value | p-5-421 bits |
| 0 | 1-0-000 |
| 1 | 0-0-001 |
| 2 | 0-0-010 |
| 3 | 1-0-011 |
| 4 | 0-0-100 |
| 5 | 0-1-000 |
| 6 | 1-1-001 |
| 7 | 1-1-010 |
| 8 | 0-1-011 |
| 9 | 1-1-100 |

### UNIVAC LARC

The UNIVAC LARC has four bits: one bi bit (5), three Johnson counter-coded quinary bits and one parity check bit.
| Value | p-5-qqq bits |
| 0 | 1-0-000 |
| 1 | 0-0-001 |
| 2 | 1-0-011 |
| 3 | 0-0-111 |
| 4 | 1-0-110 |
| 5 | 0-1-000 |
| 6 | 1-1-001 |
| 7 | 0-1-011 |
| 8 | 1-1-111 |
| 9 | 0-1-110 |