ASCII (pronounced "az-kee", "ass-key" if American), is a table of characters for computers. It is binary code used by electronic equipment to handle text using the English alphabet, numbers, and other common symbols. ASCII is an abbreviation for American Standard Code for Information Interchange. ASCII was developed in the 1960's and was based on earlier codes used by telegraph systems.
The code includes definitions for 128 characters: most of these are the printable characters of the alphabet such as abc, ABC, 123, and ?&!. There are also control characters that cannot be printed but instead control how text is processed, to start a new line for example. Those are in the left column in the table below. Most of the control characters are no longer used for their original purpose. There is no real formatting control (for bold or Italics, etc.) 
Sometimes someone talks about a file or document in ASCII, meaning it is in plain text.
ASCII usually uses 7 binary digits (bits) to represent characters: 1000001 (or 41 in hexadecimal or 65 in standard base-10 numbers) represents the upper-case letter A; 1000010 represents B; 1000011 represents C; and so on in sequence. Eight bits allowed a parity bit to be included in each byte sent over a serial port or modems, this bit is used for avoiding errors. This was more important years ago when connections were often noisy.
ASCII does not have diacritics (marks that are added to a letter, like the dots (umlauts) above vowels in German, or the tilde (~) above the 'n' for the 'ñ' used in Spanish). It was only meant for English and doesn't work well for most other languages. Some English words borrowed from other languages use these marks as well, like resumé (see Appendix:English words with diacritics).
This led to some systems using 8 bits (a full byte) instead of 7 bits. The proper name for systems that use 8 bits is called extended ASCII. Eight bits allows for 256 characters. The first 128 characters must be the same as for ASCII and the rest are usually used for alphabetic letters with accents, for example like É, È, Î and Ü. This solves the problem for languages that are based on the Latin alphabet, although not all extended ASCII systems are the same. Other alphabets, like the Greek alphabet, Cyrillic alphabet need a different set of characters. And some systems like those using Chinese characters still do not work, as they use thousands of characters. So unicode was created to have one common system for all languages.
Standard ASCII is still commonly used, particularly in computer software and HTML files. Until 2010 it was the standard for URLs. Often a web site that has fields for entering text will only take ASCII text. Any special markups for bold or centered text, etc. will show up incorrectly.