что такое utf-8?

 

материал из википедии — свободной энциклопедии
utf-8 (от англ. unicode transformation format — формат преобразования юникода) — в настоящее время распространенная кодировка, реализующая представление юникода, совместимое с 8-битным кодированием текста.

текст, состоящий только из символов с номером меньше 128, при записи в utf-8 превращается в обычный текст ascii. и наоборот, в тексте utf-8 любой байт со значением меньше 128 изображает символ ascii с тем же кодом. остальные символы юникода изображаются последовательностями длиной от 2 до 6 байтов (реально только до 4 байт, поскольку использование кодов больше 221 не планируется) , в которых первый байт всегда имеет вид 11xxxxxx, а остальные — 10xxxxxx.

проще говоря, в формате utf-8 символы латинского алфавита, знаки препинания и управляющие символы ascii записываются кодами us-ascii, a все остальные символы кодируются при помощи октетов со старшим битом 1. это приводит к двум эффектам.

даже если программа не распознаёт юникод, то латинские буквы, арабские цифры и знаки препинания будут отображаться правильно. 
в случае, если латинские буквы и знаки препинания занимают существенно бо́льший объём текста, чем всё остальное, utf-8 даёт выигрыш по объёму по ставнению с utf-16. поэтому utf-8 часто применяется в различных компьютерных языках, основанных на английском. 
формат utf-8 был изобретён 2 сентября 1992 года кеном томпсоном и робом пайком. 

один из вариантов unicode. unicode - универсальная кодировка символов, позволяющая представить почти все существующие на земле алфавиты. 

кодировка символов