An early six-bit binary code was used for
Braille, the reading system for the blind that was developed in the 1820s. The earliest computers dealt with numeric data only, and made no provision for character data.
Six-bit BCD, with several variants, was used by
IBM on early computers such as the
IBM 702 in 1953 and the
IBM 704 in 1954. Six-bit encodings were replaced by the 8-bit
EBCDIC code starting in 1964, when
System/360 standardized on 8-bit
bytes. There are some variants of this type of code (see
below). Six-bit character codes generally succeeded the five-bit
Baudot code and preceded seven-bit
ASCII. Six-bit codes could encode more than 64 characters by the use of
Shift Out and Shift In characters, essentially incorporating two distinct 62-character sets and switching between them. For example, the popular
IBM 2741 communications terminal supported a variety of character sets of up to 88 printing characters plus control characters.
Teletypesetter code A special 6-level extension of the 5-level
International Telegraph Alphabet was used to remotely control
Linotype machines beginning around 1930. By 1950 it was widely used by
wire services to send preformatted news stories to participating newspapers. It supported the 90
printable characters characters of a Linotype machine, plus
whitespace characters. The TTS code had two pairs of shift codes allowing a total of four shift states. The first operated much like a keyboard's shift key and selected between a lower-case and digits repertoire, and an upper-case and symbols one. A second pair of Linotype-specific "lower rail" and "upper rail" shift codes would select an alternate (usually italic) font.
BCD six-bit codes Six-bit
BCD codes were adaptations of the
punched card code to
binary code.
IBM applied the terms
binary-coded decimal and
BCD to the variations of BCD
alphamerics used in most early IBM computers, including the
IBM 1620,
IBM 1400 series, and non-
decimal architecture members of the
IBM 700/7000 series.
COBOL databases six-bit code A six-bit code was also used in COBOL databases, where end-of-record information was stored separately.
Magnetic stripe card six-bit code A six-bit code, with added odd
parity bit, is used on Track 1 of
magnetic stripe cards, as specified in
ISO/IEC 7811-2.
DEC SIXBIT code A popular six-bit code was
DEC SIXBIT. This is simply the ASCII character codes from 32 to 95 coded as 0 to 63 by subtracting 32 (i.e., columns 2, 3, 4, and 5 of the ASCII table (16 characters to a column), shifted to columns 0 through 3, by subtracting 2 from the high bits); it includes the space, punctuation characters, numbers, and capital letters, but no control characters. Since it included no control characters, not even end-of-line, it was not used for general text processing. However, six-character names such as
filenames and
assembler symbols could be stored in a single
36-bit word of the
PDP-10, and three characters fit in each word of the
PDP-1 and two characters fit in each word of the
PDP-8. Another, less common, variant is obtained by just stripping the high bit of an ASCII code in 32 - 95 range (codes 32 - 63 remain at their positions, higher values have 64 subtracted from them). Such variant was sometimes used on DEC's
PDP-8 (1965).
ECMA and ISO six-bit code A six-bit code similar to DEC's, but replacing a few punctuation characters with the most useful control characters—including
SO/SI, allowing code extension—was specified as
ECMA-1 in 1963. Four years later, ISO Recommendation R 646-1967 (which later evolved into
ISO Standard 646) included an almost identical six-bit code, differing only in some of the alternative options permitted for a few characters. ECMA-1 was eventually withdrawn, and ISO 646-1973 explicitly removed the six-bit code, standardizing only its 7-bit code.
ICT/ICL 6-bit character set The
ICT (later ICL) 1900-series of mainframes used a six-bit code derived from an early 1963 version of
ASCII for internal storage and processing, referred to as the "ECMA character set" in its documentation.
AIS SixBit ASCII The
automatic identification system (AIS) uses this code in character strings within an encoded AIVDM/AIVDO payload.
FIELDATA six-bit code FIELDATA was a seven-bit code (with optional parity) of which only 64 code positions (occupying six bits) were formally defined. A variant was used by
UNIVAC's 1100-series computers. Treating the code as a six-bit code these systems used a 36-bit word (capable of storing six such reduced FIELDATA characters).
Braille six-bit code Braille characters are represented using six dot positions, arranged in a rectangle. Each position may contain a raised dot or not, so Braille can be considered to be a six-bit binary code. Some more modern Braille systems add an extra two dots, making these systems an eight-bit code instead. ==Six-bit codes for binary-to-text encoding==