
Although various international organisations have composed standards in the communications environment it is a fact of life that different computers have different representations. All large IBM mainframes use EBCDIC as the character code, whereas practically all other computers use ASCII. Since manufacturers rarely change these conventions (to avoid having their new products be incompatible with their old ones), it is unlikely that any universal standards for internal data representation will ever be adopted. Thus, below is a summary of the main codes used in today's computer environment, some solely for data transmission and some used for internal representation and transmission.
Baudot Code
The original code used for data transmission purposes was a five-bit code known as Baudot code - it should be noted that a five bit code allows the transmission of 32 or 2 to the power 5 characters. In Baudot code there are 26 letters of the upper-case alphabet, plus six control characters. Yet, the designation of two of these control characters, as LETTER SHIFT and FIGURE SHIFT, allows the code to be extended considerably. For example, the figure shift code causes all subsequent characters to be modified in some way, until the shift is cancelled.
Using the letter shift concept the same code can be used to represent capital and small letters.
Advantages of Baudot Code
Symbols are all of equal size and therefore decoding them using a table would be easier
| Baudot code is resilient in the presence of transmission errors
| |
Disadvantages of Baudot Code
Limitation on the number of characters it can represent - total of 62 characters
| Apparent lack of logic in the way the characters and the numbers have been allocated - the bit pattern for the number one (11101) is numerically larger than the bit pattern for the number nine (00011).
| |
ASCII Encoding
Nowadays, the principal code used in data transmission systems is ASCII, the American Standard Code for Information Interchange. ASCII represents each character by means of a seven bit pattern, thus allowing a total of 128 different combinations. However, although only seven bits are actually required it is normal practice to in fact store each character as an eight-bit byte, the additional bit being employed for error detection.
It should be noted that the table commences at 32, but there is no character for this - ASCII code 32 is the code for a blank. The ASCII codes 0 - 31 do not represent printable characters, but are used for control purposes (e.g. in synchronous transmission code).
As has been mentioned previously ASCII code is also used for the representation of character data within the memory or on the backing storage of a computer system. However, ASCII does not maintain a monopoly in this area, as the EBDIC approach is occasionally implemented.
Advantages of ASCII Code
Usually transmitted as 8-bits and thus one bit can be employed for simple error detection
| ASCII code is widely used for representation in the internal structure of a computer and thus translation is not normally required if information is to be transmitted over a network
| |
Disadvantages of ASCII Code
| Occasionally much of the information to be transmitted will be relatively similar and thus the seven-bit code can waste space |
EBCDIC Code
Lastly, one final fixed length code is Extended Binary Coded Decimal Interchange Code (EBCDIC). This is an eight-bit code, thus allowing the representation of 256 distinct combinations. As EBCDIC is used with the majority of mainframe equipment manufactured by IBM it can be described as a proprietary code. However, owing to the widespread use of IBM equipment in the computer industry it is frequently used.
Advantages of EBCDIC Code
An eight-bit code thus having a total of 256 different combinations
| Code words are all of equal length so relatively easy to decode
| |
Disadvantages of EBCDIC Code
Unlike ASCII there is no "free" bit which can be used for error detection
| If a computer using this code for internal representation is to be connected to a data transmission system, the data will generally have to be converted to ASCII before transmission
| |