Six-bit character code


A six-bit character code is a character encoding designed for use on computers with word lengths a multiple of 6. Six bits can only encode 64 distinct characters, so these codes generally include only the upper-case letters, the numerals, some punctuation characters, and sometimes control characters. Such codes with additional parity bit were a natural way of storing data on 7-track magnetic tape.

Types of six-bit codes

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 was used by IBM on early computers such as the IBM 704 in 1954. This encoding was replaced by the 8-bit EBCDIC code when System/360 standardized on 8-bit bytes. There are some variants of this type of code.
Six-bit character codes generally succeeded the five-bit Baudot code and preceded seven-bit ASCII. One popular variant was DEC SIXBIT. This is simply the ASCII character codes from 32 to 95 coded as 0 to 63 by subtracting 32 ; 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 PDP-10, and three characters fit in each word of the PDP-1 and two characters fit in each word of the PDP-8.
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.
A UTF-6 encoding was proposed for Unicode but was superseded by Punycode.

BCD six-bit code

Six-bit BCD code was the adaptation 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 six-bit code

A DEC SIXBIT code including a few control characters—along with SO/SI, allowing code extension—was specified as ECMA- in 1963. Another, less common, variant is obtained by just stripping the high bit of an ASCII code in 32 - 95 range. Such variant was sometimes used on DEC's PDP-8.

FIELDATA six-bit code

was a seven-bit code of which only 64 code positions 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.

Braille six-bit code

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.

Six-bit codes for binary-to-text encoding

Transmission of binary data over systems which are designed for text only can sometimes introduce problems. For example, email historically supported only 7-bit ASCII codes and would strip the 8th bit, thus corrupting binary data sent directly through any troublesome mail server. Other systems can cause issues by improperly interpreting control characters during storage or transmission.
A number of schemes exist to pack 8-bit data into text-only representations which can pass through text mail systems, to be decoded at the destination. Examples of 6-bit character subsets used for packing binary data include Uuencode and Base64. These sets contain no control characters and allow data to be transmitted over any medium which is also able to transmit human-readable text.

Examples of BCD six-bit codes

Characters are shown with their Unicode equivalents.

Examples of six-bit ASCII variants

GOST 6-bit code

Example of six-bit Braille codes

The following table shows the arrangement of characters, with the hex value, corresponding ASCII character, Braille 6-bit codes, Braille Unicode glyph, and general meaning.

OWIKI.org. Text is available under the Creative Commons Attribution-ShareAlike License.