wpe41.gif (23084 bytes)CIS3355: Business Data Structures
Fall, 2008
 

What Is EBCDIC?

Is the where you finally an answer question:
So, everyone uses ASCII now, right??

You bet.

No -- not everyone uses ASCII. The Extended Binary Coded Decimal Interchange Code (EBCDIC) was basically developed by Herman Hollerith in the 1880's. Hollerith started a company called the Tabulating Machine Company, which later became The Computer Tabulating Recording Company, which finally Became International Business Machines (IBM). It was intended as a binary code for alphabetic and numeric characters initially for it's punched cards and later for its larger operating systems. It was the code for text files that is used in IBM's OS/390 operating system for its S/390 servers and that thousands of corporations use for their legacy applications and databases.

In an EBCDIC file, each alphabetic or numeric character is represented with an 8-bit binary number (a string of eight 0's or 1's). 256 possible characters (letters of the alphabet, numerals, and special characters) are defined.

So what?

Note that ASCII was originally based on a 7-bit character set. In that sense, EBCDIC was ahead of it's time.

What are the differences between ASCII and EBCDIC?

There are quite a few difference (and some similarities), as a quick comparison of the first 16 binary sequences shows:

Binary ASCII EBCDIC
00000000 NUL Null NUL Null
00000001 SOH Start of Heading (CC) SOH Start of Heading
00000010 STX Start of Text (CC) STX Start of Text
00000011 ETX End of Text (CC) ETX End of Text
00000100 EOT End of Transmission (CC) PF Punch Off
00000101 ENQ Enquiry (CC) HT Horizontal Tab
00000110 ACK Acknowledge (CC) LC Lower Case
00000111 BEL Bell DEL Delete
00001000 BS Backspace (FE)    
00001001 HT Horizontal Tabulation (FE)    
00001010 LF Line Feed (FE) SMM Start of Manual Message
00001011 VT Vertical Tabulation (FE) VT Vertical Tab
00001100 FF Form Feed (FE) FF Form Feed
00001101 CR Carriage Return (FE) CR Carriage Return
00001110 SO Shift Out SO Shift Out
00001111 SI Shift In SI Shift In

Which coding scheme is better?

It doesn't seem that one is better than the other, just different.

Why didn't IBM adopt ASCII?

IBM had a large investment in EBCDIC. By 1964 IBM had spent hundreds of millions of dollars developing a new line of mainframe computers, called the System 360. Nonetheless, IBM was tempted to adopt ASCII as the internal language of its new computer line. But there was one problem. For years IBM and its customers had been using Hollerith-style punch cards to enter and store data. And the "collating sequence or sorting order, of the Hollerith code was incompatible with the new ASCII code. If IBM adopted the new code, it could alienate its existing customers, force them to update all their data files, and reduce the chances the new computer line would be successful (http://www.karenware.com/newsletters/2000/2000-10-23.asp).

WAIT!! I just remembered. I have an IBM PC and it uses ASCII!!

Yes it does. That is because in 1981, IBM commissioned Microsoft to develop the Operating System (MS-DOS) for it's PCs (The first time they had NOT developed the operating system in-house). MS-DOS uses ASCII.

You mean ASCII is in the Operating System and not in hardware?

Of course. As we already know, the computer is essentially nothing more than a series of light switches.

Some good references include:

  1. A Brief History of Character Codes

  2. Table of EBCDIC Characters

  3. ASCII and EBCDIC Compared

At this point in time, you should be able to Answer the following questions:

  1. What is EBCDIC and why was it developed?

    The Extended Binary Coded Decimal Interchange Code (EBCDIC) was basically developed by Herman Hollerith in the 1880's. It was IBM's coding scheme and was intended as a binary code for alphabetic and numeric characters initially for it's punched cards and later for its larger operating systems.
     
  2. How is EBCDIC different than ASCII?

    First, EBCDIC relied on 8-bits, whereas ASCII initially relied on 7-bits. Additionally EBCDIC associates different symbols with it's bit sequences, and has some different characters.
     
  3. IBM’s Mainframe Coding scheme is called:

    a.   American Standard Code for Information Interchange
    b.   International Business Machine Coding of Characters
    c.   Extended Basic Code for Decimal Information Characters
    d.   Extended Binary Coded Decimal Interchange Code
    e.   All Purpose Binary Coded Interchange of Information

    Answer: d
     
  4. EBCDIC is different that ASCII in that:

    a.   It has some different symbols
    b.   It was originally an 8-bit coding scheme
    c.   The bit-sequences used are different
    d.   None of the above
    e.   All of the above

    Answer: e
     
  5. IBM didn't adopt ASCII because

    a.   EBCDIC was a superior coding scheme
    b.   It had a large investment in EBCDIC
    c.   ASCII was too expensive to install
    d.   ASCII wouldn't work in IBM systems
    e.   All of the above

    Answer: b
     

This page was last updated on 01/09/05