Share |
Login Form
Newsletter



Receive HTML?

Latest Members


ASCII, EBCDIC, ISO, and Other Computer Codes (Part 4) Hot

 
User rating
 
0.0 (0)

Digital computers represent and manipulate all forms of data as a collection of numerical values. In the case of text, alphanumerical and punctuation characters are each assigned a numerical equivalent, and this collection of character-to-number mappings is referred to as a "code." In this, the fourth installment of our mini-series, we introduce the concepts of ISO, Unicode, and "Chunky Graphics" codes.

Just to prepare the stage for what is to follow: In Part 1 we considered the concept of codes in general; in Part 2 we took a look at the ASCII convention; and in Part 3 we pondered EBCDIC character codes. Now read on...

Chunky Graphics Codes
In our previous discussions, we noted that the original ASCII was a 7-bit code. As opposed to always forcing the most-significant bit of an 8-bit byte to logic 0 or using it to implement a parity check, many computer vendors opted for a third alternative, which was to use this bit to extend the character set.

That is, if the most significant bit was a logic 0, then the remaining bits were used to represent the standard ASCII codes $00 through $7F (we discussed this aspect of ASCII in Part 2 of our mini-series). If the most significant bit was a logic 1, however, then the remaining bits could be used to represent additional characters of the vendor's choosing.

In this case, one option would be to use these extra codes to support the special characters required by other languages (see also the discussions on the ISO and Unicode standards later in this article.) Another option was to use these codes to implement simple graphics. As the resulting displays were somewhat "chunky," these were often referred to as "chunky graphics."

As an aside, one of my books – How Computers Do Math – features a virtual computer/calculator called the DIY Calculator. For your delectation and delight, one of the DIY Calculator's input/output devices (the console/screen) supports a set of chunky graphics characters as illustrated in Figure 4-1.

The DIY Calculator's chunky graphics

Figure 4-1. The DIY Calculator's chunky graphics.

ISO and Unicode
Upon its introduction, ASCII quickly became a de facto standard around the world. However, the original ASCII didn't include all of the special characters (such as á, ê, and ü) that are required by the various languages that employ the Latin alphabet. Thus, the International Organization for Standardization (ISO) in Geneva, Switzerland, undertook to adapt the ASCII code to accommodate other languages.

In 1967, the organization released its recommendation ISO 646. Essentially, this left the original 7-bit ASCII code "as was", except that ten character positions were left open to be used to code for so-called "national variants."

ISO 646 was a step along the way toward internationalization. However, it didn't satisfy everyone's requirements; in particular (as far as the ISO was concerned), it wasn't capable of handling all of the languages in use in Europe, such as the Arabic, Cyrillic, Greek, and Hebrew alphabets. Thus, the ISO created its standard 2022, which described the ways in which 7-bit and 8-bit character codes were to be structured and extended.

The principles laid down in ISO 2022 were subsequently used to create the ISO 8859-1 standard. Unofficially known as "Latin-1", ISO 8859 is widely used for passing information around the Internet in Western Europe to this day. Full of enthusiasm, the ISO then set about defining an "all-singing all-dancing" 32-bit code called the Universal Coded Character Set (UCS). Now known as ISO/IEC DIS 10646 Version 1, this code was intended to employ escape sequences to switch between different character sets. The result would have been able to support up to 4,294,967,296 characters, which would have been more than sufficient to address the world's (possibly the universe's) character coding needs for the foreseeable future.

However, starting in the early 1980s, American computer companies began to consider their own solutions to the problem of supporting multilingual character sets and codes. This work eventually became known as the Unification Code, or Unicode for short. Many people preferred Unicode to the ISO 10646 offering on the basis that Unicode was simpler. After a lot of wrangling, the proponents of Unicode persuaded the ISO to drop 10646 Version 1 and to replace it with a Unicode-based scheme, which ended up being called ISO/IEC 10646 Version 2.

Further Reading
There are many additional resources available to anyone who is interested in knowing more about this – and related – topics. The following should provide some "food for thought," and please feel free to let me (the author) know of any other items you feel should be included in this list:

1) Two really good starting points are, of course, the American National Standards Institute (ANSI) and the International Organization for Standardization (ISO).

2) Steven J. Searle has created a tremendously useful site entitled A Brief History of Character Codes. This site provides a wealth of information pertaining to the introduction and evolution of character codes in North America, Europe, and East Asia.

3) Jim Price provides a very useful Introduction to ASCII on his website. In addition to information such as IBM PC keyboard scan codes, Jim's FAQ answers questions such as: "What are the ASCII codes for things like the degrees symbol (º), the trademark symbol (®), solid blocks, and other special symbols?"

4) Last but certainly not least, my book How Computers Do Math includes a series of step-by-step interactive laboratories that guide the reader in using ASCII codes to display messages and numerical data on the virtual DIY Calculator. Also, the DIY Calculator has been augmented with virtual QWERTY Keyboard and Console (screen) devices, both of which employ ASCII characters (the latest version of the DIY Calculator software is available on the "Download" page of the www.DIYCalculator.com website).

User reviews

There are no user reviews for this listing.

To write a review please register or login.
 
 
 
Written by :
Clive Maxfield
 
 






Latest Content
User rating
 
0.0 (0)