6

With an encoding such as EBCDIC being in existence already (and being 8 bit to boot), what was the need to invent yet another encoding and a 7 bit one at that?

Why was ASCII invented and what problems with EBCDIC did supposed to solve?

4

2 Answers 2

15

Development of ASCII started earlier than what you think (see for instance Eric Fischer's The Evolution of Character Codes, 1874-1968) and IBM 360 - for which EBCDIC was developed -- should have used ASCII if its development had not been so slow (see http://www.bobbemer.com/P-BIT.HTM)

See also C. E. Mackenzie, Coded Character Sets, History and Development, ser. The systems programming series. Addison-Wesley, 1980. which describes the development of ASCII, EBCDIC and some other character sets with rationale for some of the assignations (things about chain printers and punched cards are fascinatingly obsolete but still have influence on what we use).

1
  • +1 for "earlier than ... you think". ASCII and EBCDIC were developed contemporaneously with different ancestors. Nov 9, 2013 at 15:11
13

One reason is because EBCDIC wasn't a good standard, at least depending on your purpose. For example, the letters aren't in two (upper and lower case) contiguous blocks - there are extra codes between the EBCDIC letter codes, some of them used for other valid characters. The ~ is between r and s, for example. This makes sorting a bit more difficult.

Another is precisely because ASCII is a 7 bit code. Saving one bit per character was worthwhile at the time, and even six-bit character codes weren't uncommon. Even when 8 bits were used per character, the eighth was often a parity bit and not part of the character code.

6
  • 4
    A common media for inter-exchange (one of the I of ASCII) at the time was paper tape, which needed parity and did not easily allow more than 8 bits per frame. May 23, 2012 at 18:43
  • 3
    At that time, 7-track tape drives were also fairly common. May 23, 2012 at 18:53
  • 1
    @LokiAstari: I'm not really advocating anything -- but at least if I recall correctly, that was how they were used, at least part of the time (though the 7-track drives of which I was aware were mostly recording CDC's 6-bit code + parity in parallel). Later, there were also 9-track drives, that worked pretty much the same way. Then there were drives that acted like 9-track drives, but actually used a head on a rotating drum, about like in a VCR (I believe all 6250 FCI drives worked that way). May 23, 2012 at 19:32
  • 2
    @Loki - whether Jerry advocates it or not, he seems to be correct. Though what this describes is 6 bits plus parity. My first thought - parallel data across the width of magnetic tape must be quite sensitive to alignment and tape-stretch issues.
    – user8709
    May 23, 2012 at 19:33
  • 7
    Paper tape is also the reason the "delete" control character is 0x7F: So that you could "delete" a character on the tape by punching out all 7 holes.
    – dan04
    May 24, 2012 at 1:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.