ASCII 226 Alt 226 = 'Γ'
I really don't understand this.
First, note that within one byte (8 bits), it is not possible to have more than 256 (2
8) different characters.
There are different character encodings. Some of them use only one byte (or even less, as ASCII, see bellow), and some of them use more, to be able to have more characters encoded.
Some encodings have variable length, the example of this is popular UTF-8 encoding.
So, some encondigs cannot show letter â, and some of them can.
ASCII standard is 7-bit encoding, so it has only 128 codes. It contains english upper and lower latin letters A-Z, a-z, digits 0-9, standard punctuation charactes, and control characters.
ASCII does not contain letter â.Note that the fact that my text here contains the letter â means that this forum use another encoding, not plain ASCII.
Historicaly, it was a good solution for English language, Americans created it and it was all they need.
However, as our world (still) uses other languages, and most of these languages use more characters, ASCII was not a solution for them.
Then, ANSI encodings came. It is not one encoding, it is a family of one-byte encodings.
The idea is to use the fact that ASCII is 7-bit encoding and computers memory is always organized in bytes (8-bits), so each ASCII character, written in one byte has a leading zero bit. Putting 1 in the leading bit, allows to extend this encoding with 128 more characters, and keeping compatibility with plain ASCII standard.
Still, it is not possible to have all characters the world uses in one-byte, so ASCII got several extensions -- one for west European latin languages -- the non-english characters of west European languages (Portugese, Spanish, French, German, Swedish, etc.) could fit in one Ansi standard -- one way to extend ASCII -- you can find there German letters Ä, Ö, Ü, ß; Spanish ñ, etc. -- all of these have value in upper range (128-255), and the lower range (0-127) keeps compatibility with ASCII, that is why I said, it is one ASCII extension.
This ANSI west european encoding (CP-1252)
has the letter â encoded as 226.
However, the other european languages still cannot fit in this encoding -- the upper range (128-255) is not enough for all east European languages.
Then, another ANSI encoding covers east European latin languages (Polish, Slovenian, etc.). Another is added for cyrilic languages, one for Greek, one for Arabic, etc.
Each of these ANSI standar has lower range (0-127) compatible with ASCII, but upper range (128-255) has different characters.
So, using ANSI extensions can be enough if you don't need charactes from different languages which are not covered in one of these standards, but you cannot write latin letters Č (you can find it in cp1250, but not in the other standards) and Ü (found in cp1252) in one text with any of these encodings.
The fact that you can see both of them in the previous sentence, means that this forum does not use any of these ANSI encodings!
Also, there are languages in this world which have more than 128 characters, and surely cannot be covered with one-byte ASCII extension.
Then, UCS2 was invented. It is two-byte encoding. Each character is represented with two bytes.
It is compatible with old ASCII in this sense -- the first 128 (0-127 range) characters are same as ASCII characters. So, they have zeros in first 9 bits and then ASCII codes.
The idea was that it should be enough for all.
Most languages fit there, but if you write for instance German, you can see that your text file encoded in UCS2 requires twice storage comparing to same text saved in ANSI (cp1252) encoded file.
Then, the genial idea came -- UTF8 -- variable length encoding. ASCII characters take one byte, and all other character take more (all european upper-range characters from ANSI encodings take two bytes, but some far eastern letters take three and even four).
For example, German text mentioned before, now saved in UTF8 encoded file will be almost same size as ANSI encoded -- only special German characters will take two bytes, but most of characters in the text (letters a-z, digits, standard punctuation) will take just one byte.
There are more beautiful things about UTF8 -- read this:
http://wiki.freepascal.org/UTF8_strings_and_charactersLazarus uses UTF8.In UTF8, the letter â, which you need is encoded with two bytes -- 195 and 162.
Just to be complete -- two byte encoding UCS2 was just not enough for all the characters our world needs. So it is therefore deprecated now and there is also UTF16 encoding standard. I'm not going further into this, I hope I helped.