Baudot code

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

The Baudot code, invented by Émile Baudot,[1] is a character set predating EBCDIC and ASCII. It was the predecessor to the International Telegraph Alphabet No. 2 (ITA2), the teleprinter code in use until the advent of ASCII. Each character in the alphabet is represented by a series of bits, sent over a communication channel such as a telegraph wire or a radio signal. The symbol rate measurement is known as baud, and is derived from the same name.

History

Baudot code

Baudot Code (Continental and UK versions)
Baudot Code (Continental and UK versions)
Columns I, II, III, IV, and V show the code; the Let and Fig columns show the letters and numbers for the Continental and UK versions; The sort keys present the table in the order: alphabetical, Gray and UK
Europe sort keys UK sort keys
V IV I II III Con­ti­nen­tal Gray Let. Fig. V IV I II III UK
- - -
A 1 A 1
É & / 1/
E 2 E 2
I o I 3/
O 5 O 5
U 4 U 4
Y 3 Y 3
B 8 B 8
C 9 C 9
D 0 D 0
F f F 5/
G 7 G 7
H h H ¹
J 6 J 6
Figure Blank Fig. Bl.
Erasure Erasure * *
K ( K (
L = L =
M ) M )
N N £
P  % P +
Q / Q /
R R
S  ; S 7/
T  ! T ²
V ' V ¹
W  ? W  ?
X , X 9/
Z  : Z  :
t . .
Blank Letter Bl. Let.

Technically, five bit codes began in the 16th century, when Francis Bacon developed the cipher now called Bacon's cipher. However, this cipher is not a machine cipher and as such is not readily suitable for telecommunications.[2]

Baudot invented his original code in 1870 and patented it in 1874. It was a 5-bit code, with equal on and off intervals, which allowed telegraph transmission of the Roman alphabet and punctuation and control signals. It was based on an earlier code developed by Carl Friedrich Gauss and Wilhelm Weber in 1834.[3][4][5] It was a Gray code (when vowels and consonants are sorted in their alphabetical order),[6] nonetheless, the code by itself was not patented (only the machine) because French patent law does not allow concepts to be patented.[7]

Baudot's original code was adapted to be sent from a manual keyboard, and no teleprinter equipment was ever constructed that used it in its original form.[8] The code was entered on a keyboard which had just five piano type keys, operated with two fingers of the left hand and three fingers of the right hand. Once the keys had been pressed they were locked down until mechanical contacts in a distributor unit passed over the sector connected to that particular keyboard, when the keyboard was unlocked ready for the next character to be entered, with an audible click (known as the "cadence signal") to warn the operator. Operators had to maintain a steady rhythm, and the usual speed of operation was 30 words per minute.[9]

The table on the right "shows the allocation of the Baudot code which was employed in the British Post Office for continental and inland services. It will be observed that a number of characters in the continental code are replaced by fractionals in the inland code. Code elements 1, 2 and 3 are transmitted by keys 1, 2 and 3, and these are operated by the first three fingers of the right hand. Code elements 4 and 5 are transmitted by keys 4 and 5, and these are operated by the first two fingers of the left hand."[8][10][11]

Baudot's code became known as International Telegraph Alphabet No. 1, and is no longer used.

Murray code

Paper tape with holes representing the "Baudot Code"

In 1901 Baudot's code was modified by Donald Murray (1865–1945), prompted by his development of a typewriter-like keyboard. The Murray system employed an intermediate step, a keyboard perforator, which allowed an operator to punch a paper tape, and a tape transmitter for sending the message from the punched tape. At the receiving end of the line, a printing mechanism would print on a paper tape, and/or a reperforator could be used to make a perforated copy of the message.[12] As there was no longer a direct correlation between the operator's hand movement and the bits transmitted, there was no concern about arranging the code to minimize operator fatigue, and instead Murray designed the code to minimize wear on the machinery, assigning the code combinations with the fewest punched holes to the most frequently used characters.[13] [14]

The Murray code also introduced what became known as "format effectors" or "control characters" – the CR (Carriage Return) and LF (Line Feed) codes. A few of Baudot's codes moved to the positions where they have stayed ever since: the NULL or BLANK and the DEL code. NULL/BLANK was used as an idle code for when no messages were being sent.

Early British Creed machines used the Murray system.

Western Union

Keyboard of a teleprinter using the Baudot code, with FIGS and LTRS shift keys.

Murray's code was adopted by Western Union which used it until the 1950s, with a few changes that consisted of omitting some characters and adding more control codes. An explicit SPC (space) character was introduced, in place of the BLANK/NULL, and a new BEL code rang a bell or otherwise produced an audible signal at the receiver. Additionally, the WRU or "Who aRe yoU?" code was introduced, which caused a receiving machine to send an identification stream back to the sender.

ITA2

Around 1930, the CCITT introduced the International Telegraph Alphabet No. 2 (ITA2) code as an international standard, which was based on the Western Union code with some minor changes. The US standardized on a version of ITA2 called the American Teletypewriter code (USTTY) which was the basis for 5-bit teletypewriter codes until the debut of 7-bit ASCII in 1963.[15]

International Telegraph Alphabet 2
International telegraphy alphabet No. 2 (Baudot-Murray code)[16]
Pattern of impulses
1=mark 0=space
Letter shift Figure shift
msb on left msb on right
00000 00000 Null Null
00100 00100 Space Space
10111 11101 Q 1
10011 11001 W 2
00001 10000 E 3
01010 01010 R 4
10000 00001 T 5
10101 10101 Y 6
00111 11100 U 7
00110 01100 I 8
11000 00011 O 9
10110 01101 P 0
00011 11000 A
00101 10100 S Bell
01001 10010 D WRU?
01101 10110 F  !
11010 01011 G &
10100 00101 H #
01011 11010 J '
01111 11110 K (
10010 01001 L )
10001 10001 Z "
11101 10111 X /
01110 01110 C  :
11110 01111 V  ;
11001 10011 B  ?
01100 00110 N ,
11100 00111 M .
01000 00010 Carriage return Carriage return
00010 01000 Line feed Line feed
11011 11011 Shift to figures
11111 11111 Shift to letters

ITA2 is still used in TDDs, telex, and some amateur radio applications, such as radioteletype ("RTTY"). ITA2 is also used in Enhanced Broadcast Solution (a recent financial protocol specified by Deutsche Börse) to reduce the character encoding footprint.[17]

Nomenclature

Nearly all 20th-century teleprinter equipment used Western Union's code, ITA2, or variants thereof. Radio amateurs casually call ITA2 and variants "Baudot" incorrectly,[18] and even the American Radio Relay League's Amateur Radio Handbook does so, though in more recent editions the tables of codes correctly identifies it as ITA2.

Details

NOTE: This table presumes the space called "1" by Baudot and Murray is rightmost, and least significant. The way the transmitted bits were packed into larger codes varied by manufacturer; the most common solution allocates the bits from the least significant bit towards the most significant bit (leaving the three most significant bits of a byte unused).

Table of ITA2 codes (expressed as hexadecimal numbers)

In ITA2, characters are expressed using five bits. ITA2 uses two code sub-sets, the "letter shift" (LTRS), and the "figure shift" (FIGS). The FIGS character (11011) signals that the following characters are to be interpreted as being in the FIGS set, until this is reset by the LTRS (11111) character. In use, the LTRS or FIGS shift key is pressed and released, transmitting the corresponding shift character to the other machine. The desired letters or figures characters are then typed. Unlike a typewriter or modern computer keyboard the shift key isn't kept depressed whilst the corresponding characters are typed. "ENQuiry" will trigger the other machine's answerback. It means "Who are you?"

CR is carriage return, LF is line feed, BEL is the bell character which rang a small bell (often used to alert operators to an incoming message), SP is space, and NUL is the null character (blank tape).

Note: the binary conversions of the codepoints are often shown in reverse order, depending on (presumably) from which side one views the paper tape. Note further that the "control" characters were chosen so that they were either symmetric or in useful pairs so that inserting a tape "upside down" did not result in problems for the equipment and the resulting printout could be deciphered. Thus FIGS (11011), LTRS (11111) and space (00100) are invariant, while CR (00010) and LF (01000), generally used as a pair, are treated the same regardless of order by page printers.[19] LTRS could also be used to overpunch characters to be deleted on a paper tape (much like DEL in 7-bit ASCII).

The sequence RYRYRY... is often used in test messages, and at the start of every transmission. Since R is 01010 and Y is 10101, the sequence exercises much of a teleprinter's mechanical components at maximum stress. Also, at one time, fine-tuning of the receiver was done using two coloured lights (one for each tone). 'RYRYRY...' produced 0101010101..., which made the lights glow with equal brightness when the tuning was correct. This tuning sequence is only useful when ITA2 is used with two-tone FSK modulation, such as is commonly seen in Radioteletype (RTTY) usage.

US implementations of Baudot code may differ in the addition of a few characters, such as #, & on the FIGS layer.

The Russian version of Baudot code (MTK-2) used three shift modes; the Cyrillic letter mode was activated by the character (00000). Because of the larger number of characters in the Cyrillic alphabet, the characters !, &, £ were omitted and replaced by Cyrillics, and BEL has the same code as Cyrillic letter Ю.

See also

Notes

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Procès d'Amiens Baudot vs Mimault
  8. 8.0 8.1 Jennings 2004
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Alan G. Hobbs, 5 Unit Codes, section Baudot Multiplex System
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Copeland 2006, p. 38
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found. Enhanced Broadcast Solution – Interface Specification Final Version
  19. Lua error in package.lua at line 80: module 'strict' not found.

References

This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.