ASCII, Unicode, UTF-7, UTF-8, UTF-32, ANSI

Вот все о разнице между ASCII, Unicode, UTF-7, UTF-8, UTF-32 и ANSI:

И ASCII, и Unicode являются стандартами кодирования.

ASCII — это исходный стандарт, впервые опубликованный в 1963 году, тогда как Unicode — более крупный стандарт.

Стандарты Unicode реализованы в форматах UTF-8, UTF-16 или UTF-32.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

ANSI является неправильным названием стандарта кодирования Windows, но не признается самим ANSI.

Итак, если вы хотите узнать все о том, чем ASCII, Unicode, UTF-7, UTF-8 и UTF-32 отличаются от ANSI, то эта статья для вас.

Давайте погрузимся прямо в!

ASCII, Unicode, UTF-7, UTF-8, UTF-32, ANSI

В чем разница между ASCII, Unicode, UTF-7, UTF-8, UTF-32 и ANSI?

В своих путешествиях вы, вероятно, встречали по крайней мере один из терминов ASCII, Unicode, UTF-7, UTF-8, UTF-16, UTF-32 и ANSI.

Однако то, с чем вы, возможно, менее знакомы, так это фактическая разница между этими семью терминами.

Навигация в битве ASCII против Unicode против UTF-7 против UTF-8 против UTF-16 против UTF-32 против ANSI и за то, для чего они лучше всего или для чего они используются, может быть сложным путешествием.

Но, не бойтесь, это не невозможно понять.

Чтобы полностью понять эти термины, хорошо бы начать с «представьте это».

Как появился ASCII?

Ручная машинка "7" молоток.

Представьте пишущую машинку.

Вы, наверное, знаете, как человек выглядит.

Теперь представьте себе молоток для пишущей машинки.

Если вы никогда не видели молоточек пишущей машинки, то это крошечный прямоугольник с символом сверху и снизу.

Молоток часто имеет строчные и прописные буквы, но иногда цифры и символы.

Во времена пишущих машинок вам были доступны символы, которые вы видели на клавиатуре.

Это количество символов равнялось количеству клавиш на клавиатуре плюс дополнительный символ поверх молоточка.

Вы получали дополнительные символы, буквально «перемещая» печатные панели, чтобы изменить выравнивание места нажатия клавиши и получить новый символ.

С компьютерными клавиатурами наборы символов могут выходить за рамки того, что механически возможно для клавиатуры.

Вы знаете, что современные компьютерные клавиатуры вмещают гораздо больше.

Но на первых компьютерах выбор символов был не намного лучше, чем на пишущей машинке.

В исходном американском стандарте символов было всего 128 символов, и он назывался ASCII.

От азбуки Морзе до пишущих машинок: знакомьтесь с ASCII

ASCII означает американский стандартный код для обмена информацией.

Он стал доступен в качестве стандарта электронной связи в 1963 году.

Он лежит в основе большинства других современных наборов символов и стандартов кодирования, которые расширяют исходные 128 символов ASCII.

Несмотря на то, что ему почти полвека, он остается столпом кодирующего ландшафта.

Веб-страницы без назначенного набора символов автоматически по умолчанию используют ASCII.

Развитие ASCII произошло из телеграфного кода.

Подобно азбуке Морзе, ASCII зависит от различных комбинаций отрицательных или положительных показателей, которые вместе соответствуют заданному символу.

Азбука Морзе использует точки и тире, а ASCII использует 1 и 0, но предпосылка та же.

ASCII был, в некотором смысле, прорывным изобретением.

Он попал в список Международные вехи в области электротехники и электронной техникинаряду с такими достижениями, как телевидение высокой четкости, проигрыватели компакт-дисков (CD) и рождение Интернета.

ASCII предшествует всем этим вехам.

Существует также расширение базовой таблицы ASCII, которое добавляет еще 128 символов к исходным 128 символам.

Он называется расширенным ASCII или EASCII.

Таким образом, базовая и расширенная таблицы ASCII объединяют в себе 256 символов.

Что такое Юникод? (4 стандарта)

Юникод — это стандарт кодирования.

Он был расширен и основан на исходном наборе символов ASCII, 128 символов которого составляют первые символы Unicode.

По состоянию на март 2020 года Unicode охватывает колоссальные 143 859 символов, включая исходный набор ASCII и тысячи других символов, принадлежащих как английским, так и другим языкам символов и глифов.

Даже в своей первоначальной версии Unicode содержал 7 163 символа, что примерно в пятьдесят пять раз превышает количество символов из ASCII.

Компьютеры резко продвинулись вперед с начала 60-х до 1987 года, года, когда появился Unicode.

Разработанный Джо Беккером и Ли Коллинзом из Xerox и Марком Дэвисом из Apple, Unicode должен был дать компьютерам многоязычные и международные возможности.

Каждое последующее издание добавляло (или иногда удаляло) различные скрипты.

Скрипты — это наборы символов, включенные в набор символов, обычно относящихся к разным языкам и алфавитам, таким как греческий или ханьский.

Стандарты Unicode реализуются либо UTF-8, UTF-16, либо UTF-32.

#1 UTF-7

UTF-7 означает 7-битный формат преобразования Unicode.

Вероятно, вы не часто видите это как стандартизированный формат кодирования.

Вам также может показаться, что вы увидите числа, кратные восьми (например, другие включенные коды UTF), а это число равно семи.

Он так и не получил распространения и сейчас считается устаревшим.

В компьютерном мире семь — действительно странное число.

Компьютеры любят числа, кратные двум и кратные восьми.

Единственное нечетное число, которое ему действительно нравится, — это единица, но только как идентификатор положительного (против отрицательного) или истинного (против ложного).

В любом случае, это сравнение оказывается набором из двух.

ASCII также работал на 7 битах, но это было формирующим и ранним временем кодирования.

UTF-7 задумывался как менее требовательная альтернатива электронной почте UTF-8, но отсутствие безопасности делало его плохим выбором.

UTF-7 просуществовал недолго, и его часто упускают из виду.

#2 UTF-8

UTF-8 максимально близок к святому Граалю кодировки символов, предоставляя большую библиотеку сценариев, не перегружая компьютеры ненужным рендерингом.

Это стандартный формат во всемирной паутине.

В 1989 году Международная Организация Стандартизации стремился создать универсальный многобайтовый набор символов.

Ранняя кодировка UTF-1 временно достигла этой цели.

Однако из-за таких проблем, как повторное использование печатных символов ASCII, его быстро заменили на UTF-8.

UTF-8 был создан в 1992 году и с тех пор остается стандартным форматом кодировки.

Он имеет дополнительный бит по сравнению с 7 битами ASCII, что позволяет обрабатывать большее количество символов.

Добавление еще одного бита означало, что UTF-8 может допускать большее количество символов.

Однако 1-байтовый код в UTF-8 совпадает с набором символов ASCII.

Это связано с тем, что ASCII по-прежнему составляет основу UTF-8 и поэтому включен в его набор.

#3 UTF-16

В конце 80-х Консорциум Unicode и подкомитет по стандартизации ISO/IEC JTC 1/SC 2 начали работу над универсальным набором символов.

Как ни странно (и сбивает с толку), этот первоначальный «Универсальный набор символов» получил название «Юникод», но позже оно было изменено на UCS-2. Это может вызвать некоторую путаницу, но Unicode почти всегда означает стандарт.

Первый проект руководства ISO/IEC JTC 1/SC 2 под названием ISO 10646 в конечном итоге стал UTF-16 и UCS-2.

UTF-16 вышел из более ранней кодировки UCS-2, когда стало очевидно, что более 65 000 с лишним кодовые точки потребуется, что и обеспечивает UTF-8.

Однако отображение символов UTF-16 не соответствует ASCII и не имеет обратной совместимости с ним.

Несмотря на удобство использования, отсутствие совместимости с ASCII делает UTF-16 иногда проблематичным.

Разработан как кодирование переменной шириныэто иногда вызывает споры.

Это замедлило время рендеринга.

Несмотря на то, что набор символов в целом предназначался для включения большего количества символов, это произошло за счет эффективности.

#4 UTF-32

Если вы вспомните историю UTF-16 несколько минут назад, вы должны помнить что-то под названием ISO 10646.

Это был проект руководящих принципов, который в конечном итоге стал стандартом.

Через некоторое время после UTF-16 стандарт ISO 10646 определил форму кодирования, работающую на 32 битах.

Они назвали эту форму кодирования UCS-4.

UCS-4 имел огромный набор кодовых точек.

Эти кодовые точки начинались с 0 и заканчивались 0x7FFFFFFFF.

В конце концов, RFC 3629 наложил ограничения на Unicode.

RFC 3629 заставил UCS-4 соответствовать ограничениям UTF-16.

Эта ограниченная версия UCS-4 стала известной как UTF-32.

После этого ISO / IEC JTC 1 / SC 2 заявил в процедурном документе, что все будущие кодовые точки как для UCS-4, так и для UTF-32 будут ограничены стандартом Unicode.

Поскольку UTF-32 теперь может представлять все кодовые точки USC-4, теперь они считаются практически идентичными.

Что такое АНСИ?

Американский национальный институт стандартов, или ANSI, начинался как Американская ассоциация стандартов.

Эта ассоциация отвечала за разработку ASCII.

В 1969 году он изменил свое название на ANSI.

Если вы немного покопаетесь, то обнаружите, что ANSI — это организация, а вовсе не стандарт или кодировка символов.

Или это?

ANSI на самом деле является набором символов, но это также неправильное название.

Настоящее имя кода ANSI — Windows-1252 или Windows-CP, и он не является стандартом, признанным Американским национальным институтом стандартов.

Windows исторически использовала «кодовую страницу ANSI» как термин для любых кодировок, отличных от DOS.

Он использует исходные 128 символов ASCII плюс дополнительные 127.

Как и ASCII, это кодировщик однобайтовых символов и самый популярный кодировщик этого типа в мире.

Как было сказано ранее, термин ANSI является неправильным, но по сей день используется в качестве термина для обозначения Windows-1252.

Что такое стандарты? (2 срока)

Женщина делает невежественный жест перед своим ноутбуком в кафе.

Вы уже заметили, что этот набор терминов делится на две категории: кодировки и стандарты.

Хотя между ними есть некоторое пересечение, каждый термин в первую очередь является одним или другим.

Стандарт в техническом мире — это «установленная норма или требование для повторяемой задачи».

Акцент на «повторяемой задаче».

В любой технической обстановке ни одно событие или действие не принесет пользы, если оно не повторяемо.

Это особенно верно в компьютерном мире.

Из перечисленных терминов три официально считаются стандартами.

Это ASCII, Unicode и ANSI.

Хотя стандарты Unicode регулируют кодировку UTF, сами по себе они не являются стандартами.

ASCII немного странный, так как это одновременно кодировка и стандарт.

Однако это понятно, учитывая, что его происхождение предшествовало многим нормам, признанным сегодня институтами.

# 1 ASCII

В качестве первоначального стандарта ASCII был впервые опубликован в 1963 году.

Но компьютеры в 1963 году были не такими, какими являются сегодня.

Они были даже не такими, какими были в 80-х.

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

Коды значений, которые обозначают пробел или удаление, следуют друг за другом, а символы, такие как буквы или цифры, идут после этого.

Шаблон ASCII также называется бетическим порядком ASCII, и два основных момента заключаются в том, что все буквы в верхнем регистре предшествуют всем буквам в нижнем регистре.

Не означает, что это идет «A, a, B, b», а скорее «A, B, C», и после того, как эти буквы заканчиваются, начинайте с «a, b, c» после «Z» (заглавная).

С момента своего создания ASCII претерпел двенадцать изменений, последний из которых был в 1986 году.

Первоначально комитетом, разработавшим ASCII, была Американская ассоциация стандартов, которая теперь известна как Американский национальный институт стандартов, широко известный как ANSI.

#2 Юникод

Самая большая разница между Unicode и ASCII заключается именно в этом: в их размере.

Проект руководящих принципов ИСО/МЭК ОТК 1/ПК 2 созданный в 1990 году, в конечном итоге стал стандартом Unicode с дополнениями и изменениями с течением времени, стремясь включить как можно больше символов.

Юникод сам по себе не является кодировкой.

Он оставляет это дело на усмотрение UTF-8 и его друзей.

Сам стандарт предоставляет кодовые страницы, а также рекомендации по нормализации, рендерингу и т. д.

UTF-7, UTF-8, UTF-16 и UTF-32 — все это реализации стандарта Unicode.

Хотя кодировка UTF-7 указана здесь, она не считается официальной кодировкой стандарта Unicode.

Стандарт Unicode имеет кодовое пространство, разделенное на семнадцать плоскостей.

Это кодовое пространство представляет собой набор числовых диапазонов от 0 до 10FFFF, которые называются кодовыми точками.

Каждая плоскость содержит диапазон этих значений.

Unicode обозначает свой код буквой U впереди («U+»), за которой следует кодовая точка в шестнадцатеричном формате. U+0000 и U+10FFFF являются примерами признанных обозначений для Unicode.

Почему UTF не является стандартом?

UTF-7, UTF-8, UTF-16 и UTF-32 не являются стандартами и поэтому не могут быть объяснены как таковые.

Это было бы похоже на описание кулинарной книги как ингредиентов и инструментов для еды.

Кулинарная книга рассказывает вам, что можно приготовить и как это приготовить, и в этом смысле она похожа на стандарт.

Ингредиенты и инструменты позволяют реализовать это и создать блюдо.

Какими бы необходимыми ни были указания, еда — ничто без настоящей еды и предметов, необходимых для ее приготовления!

Все эти четыре набора символов UTF называются кодировками.

Это означает, что они являются инструментом, который позволяет пользователю запрашивать символ, посылать сигнал через компьютер и возвращаться в виде видимого текста на экране.

Стандарт Unicode реализуется кодировками, из которых наиболее популярны UTF-8, UTF-16 и UTF-32.

Что такое кодировка? (3 условия)

Бизнесмен щурит глаза и разочаровывается в компьютере.

Во-первых, постарайтесь избавиться от неловкой формулировки слова.

Да, это звучит как глагол, но это существительное, как рисунок или картина.

Кодирование включает в себя реализацию набора символов.

При обработке с помощью кодировки, такой как UTF-8, символам присваивается целое число, чтобы они могли проявляться как символы.

В сфере кодирования несколько терминов определяют аспекты кодирования.

  • Характер: Наименьшая возможная единица текста. Может быть буква «G» или пробел или возврат
  • Набор символов: Коллекция персонажей. Они не ограничиваются одним языком, например, английский и французский являются отдельными языками, но используют одни и те же латинские символы.
  • Кодированный набор символов: В отличие от наборов символов, которые не имеют числового выравнивания, кодированные наборы символов присваивают каждому символу целые числа.
  • Кодовая точка: Соответствующее целое число в наборе символов, которое дает ему значение, на которое можно ссылаться.
  • Кодовое пространство: Диапазон целых чисел, состоящий из кодовых точек

Эти термины определяют основу терминов кодирования.

#1 UTF-8

Когда данные обрабатываются, они подсчитывают свои биты.

Бит — это единая единица информации, которую вы увидите в виде «1» (истина) или «0» (ложь) в двоичном числе, таком как 0011 (4-битное двоичное число для числа три).

UTF-8 — это 8-битная кодировка, в отличие от ASCII, которая является 7-битной.

Число три выше является 4-битным двоичным числом. Восемь бит всегда составляют байт.

Причина, по которой ASCII называется 7-битной, заключается в том, что начальное целое число всегда равно нулю, что вынуждает компьютер игнорировать его и подтверждать только остальные семь битов информации.

UTF-8 является 8-битным, но и UTF-8, и ASCII могут выводить один байт. UTF-8 может иметь длину до четырех байтов, но допускает однобайтовую функцию ASCII и, следовательно, обратно совместим.

И это то, что делает его золотым.

Гибкость UTF-8 может обрабатывать ситуации с большими байтами, но при этом быть достаточно быстрой для обработки отдельных байтов и не перегружаться ненужным весом байта.

# 2 UTF-16

То, что делает UTF-16 чем-то вроде палки в грязи, заключается в том, что UTF-16, как минимум, требует как минимум два байта.

ASCII может обрабатывать только один байт. В то время как UTF-8 может обрабатывать до четырех байтов, его минимум соответствует ASCII по этому показателю: они оба могут обрабатывать один байт.

Поскольку UTF-16 перемещает информацию вперед пакетами по два байта, при попытке переместить что-либо в ASCII код теряется.

Поскольку ASCII может перемещать только один байт, UTF-16 опережает только половину требуемых данных.

У вас остается кодовая точка, значение которой составляет только первую половину того, что должно быть, что дает вам совершенно другой символ.

Помимо размера, это становится основным различием между UTF-16 и UTF-8. UTF-8 может вернуться назад и объединиться с ASCII, в то время как UTF-16 опережает и игнорирует малость ASCII и не может правильно обрабатывать его кодировку.

#3 UTF-32

Итак, есть UTF-8, который может иметь от одного до четырех байтов, есть UTF-16, которому нужно как минимум два байта, и есть UTF-32.

UTF-32 требует не менее четырех байтов. Это большой.

Представьте это.

У тебя есть бейсбольный мяч, который ты отправишь своему двоюродному брату Кевину.

Почтовые расходы зависят от веса и размера посылки.

Вы решаете отправить бейсбольный мяч в коробку, в которой может поместиться баскетбольный мяч.

Вы платите в два раза больше, чем должны были, потому что позволили положить в коробку гораздо больший предмет, в котором не было необходимости.

UTF-32 такой.

Для передачи 32-битных данных требуется больше времени, а для их хранения требуется больше места.

Преимущество заключается в том, что требуется меньше вычислений, чтобы определить, какой символ необходимо визуализировать.

И UTF-8, и UTF-16 должны определять, сколько байтов нужно для вычисления, что занимает больше времени. UTF-32 знает только четыре байта.

Больше времени тратится на что-то другое, но меньше времени на этот расчет.

Что такое наборы символов?

Крупный план клавиатуры компьютера с акцентом на букву К.

В общем, наборы символов представляют кодировку символов, где каждому символу присваивается номер.

Поскольку компьютерам больше не нужно напрямую обращаться к двоичным числам, большинство наборов символов имеют число, которое легче идентифицировать.

Эти числа преобразуются в двоичные числа, которые сообщают компьютеру, какой символ вам нужен.

Числа, которые вы видите, обычно являются шестнадцатеричными и часто имеют особое обозначение в зависимости от того, какого стандарта они придерживаются.

Как вы, наверное, уже догадались, наборы символов — это не только буквы или цифры.

Они также больше, чем знаки препинания и символы.

По сути, все, что вы можете сказать своей клавиатуре, является символом.

Космос? Характер. Возвращаться? Характер. Смайлики? Характер. Удалить? Характер.

Как было сказано ранее, ASCII, Unicode и ANSI не являются наборами символов.

Это стандарты.

Они определяют, как реализуются наборы символов, но истинная реализация символов и то, что они представляют собой, определяется кодировкой.

ASCII как набор символов

ASCII — это базовый, основополагающий набор символов. Кроме того, это единственный термин из семи перечисленных, который служит как набором символов, так и стандартом.

Но теперь пришло время сосредоточиться на нем как на наборе символов.

ASCII кодирует 128 символов в 7-битные целые числа.

Первые 32 (0-31) символа называются «управляющими кодами», которые существовали для управления физическим оборудованием.

Символы с номерами от 32 до 127 включают печатные символы ASCII, за исключением последнего символа, которым является Delete.

Печатные символы ASCII состоят из латинских прописных букв, строчных букв, цифр 0-9 и четырнадцати знаков препинания.

Характеры определял в США американец.

В то время символы ASCII предназначались исключительно для американского или английского использования.

Он не включает специальные письменные или фонетические символы, такие как À или œ, несмотря на их присутствие в латинских буквах.

Это развитие произойдет позже.

Управляющие персонажи: функция за кулисами

Управляющие символы начинались как способ манипулировать аппаратным обеспечением компьютера.

Это произошло во времена изобретения ASCII в начале 60-х, когда компьютеры работали более механически.

Некоторые управляющие символы вы, вероятно, узнаете, хотя, возможно, и под другими именами.

«Возврат каретки» — это термин, оставшийся со времен пишущих машинок, он эквивалентен нажатию «клавиши ввода».

Другие управляющие символы стали более неясными или глубоко скрытыми в функциях компьютера.

Важно понимать, что в ранних компьютерах управляющие коды служили для того, чтобы разрешить все, что компьютер мог сделать, например, подтвердить «конец носителя», когда компьютер достиг конца листа бумаги.

Это не то, что мы вводим сегодня, но все же то, что читает компьютер.

Что-то общее, что есть у ASCII, ANSI и Unicode, — это управляющие коды.

Первые 32 символа, плюс 127 для удаления, являются кодами управления для каждого из этих наборов символов.

Или, в случае Unicode, для наборов символов UTF, за которыми наблюдает Unicode.

Наборы символов Unicode и UTF

Как вы помните, Unicode намеревается инкапсулировать как можно больше символов из как можно большего количества языков.

Его первая версия 1991 года добавила к исходному набору символов ASCII библиотеку из 24 сценариев.

К ним относятся такие алфавиты, как иврит, арабский и хирагана.

Каждые один-два года после этого первого издания Unicode добавляет в свой репертуар различное количество скриптов.

Хотя обычно это языки или лингвистические алфавиты, иногда в версии добавляются специальные символы, такие как символы игральных карт или смайлики.

UTF-8, UTF-16 и UTF-32 обрабатывают одни и те же наборы символов и библиотеки.

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

Хотя Unicode управляет исходными 128 символами ASCII, он также обновил (но не заменил) некоторые из них.

Например, Unicode предоставляет исходный знак цента ASCII (¢), а также полноразмерный знак цента (¢), который занимает больший размер в месте символа.

ANSI (или Windows-1252) как набор символов

Повторим: ANSI — это неправильное название, и набор символов, который можно назвать «ANSI», часто вместо этого означает Windows-1252.

Но пока он будет называться ANSI, чтобы избежать путаницы.

Как и ASCII, ANSI представляет собой набор основных латинских букв.

Сюда входят классические символы ASCII, такие как управляющие коды, прописные и строчные буквы, цифры и знаки препинания, а также дополнительные буквы алфавита, такие как Č и ű.

ANSI также включает дополнительные символы валюты, такие как знак цента (¢), иена (¥) и английский фунт стерлингов (£).

Однако все они по-прежнему считаются частью латинских символов, как и все символы ASCII.

Несмотря на то, что ANSI включает вдвое больше символов, чем ASCII, все символы по-прежнему являются латинскими.

Расширение на другие символы, такие как японский или греческий, не произойдет до выпуска Unicode.

Где они сейчас?

UX UI и технология разработки программирования.

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

ASCII считается отцом-основателем всех современных кодировок, выступая как в качестве набора символов, так и в качестве стандарта.

Ни один из других терминов не проводит этого различия.

Юникод служит исключительно стандартом.

Сами стандарты не являются наборами символов или кодировками, а скорее отслеживают и предоставляют рекомендации.

Unicode контролирует UTF-8, UTF-16 и UTF-32 как реализацию стандартов, которые он поддерживает.

Аббревиатура ANSI расшифровывается как Американский национальный институт стандартов, но часто является неправильным названием кодовой страницы Windows-1252.

Не похоже, что это прояснится в ближайшее время.

UTF-8 остается наиболее широко используемой реализацией Unicode, отличаясь от UTF-16 и UTF-32 только способом обработки и доставки памяти в компьютер.

Классический ASCII

Несмотря на свой возраст, ASCII не считается устаревшим и сохраняет свой основополагающий статус для Unicode и других кодировок.

ASCII по-прежнему важен в современную эпоху.

HTML включает ярлыки, позволяющие вводить символы ASCII, такие как тильда (~) или другие символы, которые иногда теряются при веб-рендеринге.

Это достигается путем сообщения браузеру в коде HTML амперсанда (&), за которым следует знак решетки (#) с соответствующим десятичным числом нужного символа.

Управляющие коды ASCII не имеют никакого значения для HTML, и к ним нельзя обращаться так же, как к печатным символам.

Хотя названия управляющих кодов кажутся устаревшими и неиспользуемыми, многие из них все еще выполняют действия внутри компьютера.

Основное отличие состоит в том, что пользователям больше не нужно активировать эти команды самостоятельно, и они, как правило, являются автоматической функцией современных компьютеров.

Состояние ANSI (или Windows-1252)

Во-первых, ANSI по-прежнему называется ANSI, а не Windows-1252, как следовало бы.

Он также считается расширенным ASCII, что имеет смысл, учитывая, что половина его совпадает с ASCII. Однако, в отличие от ASCII, он не стандартизирован Американским национальным институтом стандартов, из-за которого он получил свое неправильное название.

По состоянию на октябрь 2020 года 0,4% веб-сайтов по всему миру заявили, что используют Windows-1252. Кодировка ISO/IEC 8859-1 считается идентичной этой, которую используют 1,9% всех веб-сайтов. Это увеличивает использование Windows-1252 до 2,3%, больше, чем UTF-16 или UTF-32.

Несмотря на то, что Windows-1252 используется более чем на 30 000 веб-сайтов, она не получала обновления версии с тех пор, как ее четвертая и последняя версия дебютировала в Microsoft Windows 98.

В отличие от ASCII или Unicode, ANSI не является универсальным для всех операционных систем.

Microsoft создала его исключительно для своих продуктов Windows, и в результате это единственное место, где он используется.

Стандарт Unicode сегодня и немного UTF-7

Unicode больше не считается кодировкой и признан исключительно стандартом или упоминается как сокращение для Консорциума стандартов Unicode.

Стандарт Unicode в настоящее время содержит 143 859 символов в своем репертуаре.

В марте 2020 года консорциум выпустил Unicode 13.0, который добавил в свою библиотеку 5930 символов и четыре скрипта.

Никакой другой стандарт не может сравниться с ним по широте и разнообразию.

Тем не менее, он касается некоторых вопросов, особенно касающихся Ханьское объединениечто является большой задачей для правильной реализации и включения множества символов хань.

Часть этого противоречия связана с международными проблемами между странами Восточной Азии, которые используют иероглифы хань.

UTF-7 остается неясным. Никогда официально не признаваемый Консорциумом Unicode, этот термин в этом списке можно считать неудачным.

Unicode не планирует возрождать или адаптировать его, поскольку изначально он никогда не выполнял свою первоначальную задачу.

UTF-8: король Интернета

UTF-8 остается основой с момента ее разработки в 1992 году. По состоянию на 2020 год около 96% всех веб-страниц используют UTF-8.

Он обратно совместим с ASCII, несмотря на то, что ASCII является 7-битным, а UTF-8 — 8-битным.

Если вы щелкните правой кнопкой мыши и выберите «просмотреть исходный код страницы» на любой заданной веб-странице, вы, вероятно, найдете обозначение «UTF-8» в качестве набора символов.

Несмотря на намерение UTF-7 обрабатывать электронные письма, UTF-8 также служит кодировкой почти для всех почтовых служб.

Универсальность UTF-8 также позволяет отображать те же кодовые точки, что и UTF-16 и UTF-32.

Их различие в основном заключается в каждом процессе кодирования данных. UTF-8 остается наиболее эффективным для Интернета и даже в некоторых случаях предпочтительнее в других местах.

Некоторые языки программирования используют UTF-8, например PHP, который является языком сценариев, обычно подходящим для использования в Интернете и взаимодействующим с базами данных через веб-браузеры.

UTF-16: выборочное использование

Поскольку UTF-16 не имеет обратной совместимости с ASCII, это делает его нецелесообразным для использования в Интернете.

В результате он не приобрел такой популярности, как UTF-8 или UTF-32.

Поскольку UTF-16 является кодировкой с переменной шириной, она требует дополнительных знаний о том, сколько байтов передается.

Это занимает дополнительную память, что замедляет время рендеринга.

Интернет использует UTF-16 менее чем в 0,01 % случаев, по сравнению с использованием UTF-8 в 96 %.

Несмотря на эти проблемы, особенно при использовании в Интернете, UTF-16 обычно используется в Java и Windows.

Он редко используется для Unix, таких как Linux, а затем Apple и Android.

Однако по состоянию на май 2019 года даже Microsoft Windows, похоже, отказывается от UTF-16 и предпочитает UTF-8, которую теперь поддерживает и рекомендует.

JavaScript сохраняет возможность использовать как UTF-16, так и, что несколько удивительно, старый добрый UCS-16.

UTF-32

Текущее использование UTF-32 в основном сосредоточено на внутренних API (интерфейс прикладного программирования).

Поскольку UTF-32 не требует предварительной обработки кодирования с переменной шириной, он быстрее для API.

Unix и язык программирования Python могут использовать UTF-32.

Тем не менее, UTF-8 по-прежнему часто побеждает в качестве лучшего выбора для кодирования. Несмотря на то, что многие программы могут его обрабатывать, UTF-8 является более эффективным и компактным, чем UTF-32.

API, функционирующие внутри, должны только обращаться к операционной системе.

Однако для этого требуется, чтобы и операционная система, и программное обеспечение могли обрабатывать UTF-32.

Использование UTF-32 здесь требует меньше от операционной системы, чем от веб-браузера.

Однако и программное обеспечение, и операционная система должны обмениваться данными с использованием UTF-32.

В противном случае попытка бесплодна.

Несмотря на удобство использования, UTF-32 по-прежнему не так жизнеспособна, как UTF-8, и используется не так часто, потому что потребляет гораздо больше памяти.

Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *