How Can We Help?
You are here:
< Back

Six-bit character codes were 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 sixbit codes

Six-bit BCD was used by IBM[when?]. 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 (see below).

Some six-bit variants were derived from 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 uppercase 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. It was also used in COBOL databases, where end-of-record information was stored separately. This code, with added odd parity bit, is used on Track 1 of magnetic stripe cards, as specified in ISO/IEC 7811-2. Uuencode utilizes this character set for text representation of arbitrary binary data.

A DEC SIXBIT code including a few control characters — along with SO/SI, allowing code extension — was specified as ECMA-1 (see below). 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.

Fieldata was a six-bit format used by UNIVAC's 1100-series computers. These systems used a 36-bit word (capable of storing 6 Fieldata characters).

Examples of BCD sixbit codes

CDC 1604 : Magnetic tape BCD codes

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
0. 1 2 3 4 5 6 7 8 9 0 # @ tape
mark
1. space / S T U V W X Y Z record
mark
,  %
2. J K L M N O P Q R −0 $ *
3. & A B C D E F G H I +0 . ¤ group
mark

CDC 1604 : Punched card codes

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
0. 1 2 3 4 5 6 7 8 9 0 =
1. space / S T U V W X Y Z , (
2. --- J K L M N O P Q R −0 $ *
3. + A B C D E F G H I +0 . )

CDC 1612 printer codes (business applications)

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
0.  : 1 2 3 4 5 6 7 8 9 0 =  ! [
1. space / S T U V W X Y Z ] , ( ~
2. J K L M N O P Q R  % $ * >
3. + A B C D E F G H I < . )  ?  ;

Example of sixbit ASCII variant

ECMA-1 : DEC SIXBIT with control characters

.0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
0. space HT LF VT FF CR SO SI ( ) * + , - . /
1. 0 1 2 3 4 5 6 7 8 9  :  ; < = >  ?
2. NULL A B C D E F G H I J K L M N O
3. P Q R S T U V W X Y Z [ \ ] ESC DEL

External links

Personal tools
  • Log in / create account
Namespaces
Variants
Actions
Navigation
Toolbox
Print/export
Categories
Table of Contents