ASCII ... and ye shall receive

ASCII Chart ">ASCII is an acronym for American Standard Code for Information Interchange. You can see now why they shortened it down to ASCII which is pronounced as 'askey' by us geeks.  This is the most common code for the exchange of letters and control characters between computers and their peripheral devices like printers.  It is a standard that provides an easy way for the letters on our monitors to get into a binary format that a computer can understand.  Thus it also finds its way into our everyday PLC lives in form of serial transmission to a display or printer.

All the assigned ASCII codes can be represented with 7 bits.  Remember from our binary chapter that 7 bits of binary represent 128 in decimal.  Typical PLCs though have 8 bits of data and therefore the left over bit is used for parity checking just to make sure everything is transmitting correctly.  The following chart shows all the assigned letters, numbers and control characters with the computer number on the left and the symbol on the right.  Some of these look weird because this stuff goes way back to the days when you had to control teletypes and phone lines.  These days I'm typically only concerned with 10 (line feed), 13 (carriage return) and 32 through 126.


ASCII chart regular small picture


International Codes

In a lot of ways ASCII is very restrictive because the A stands for American and so it basically serves only English.  Until recently the computer world has been trying to catch up to the many different languages in the world and the need for computers to be able to use them all.  Thus there are many different character sets for other languages.  The Alphabet Soup is a great resource to locate a language and it's corresponding character set.  The real advance though has come with the advent of Unicode which is one standard representing all the languages of the world.  Unicode has and will continue to supersede all these other types of alphanumeric codes because it simplifies the use of multiple languages.  The list of possibilities is endless so if you ever need to program in Ugaritic then you got it.