Сколько байт весят пять символов в кодировке unicode
Перейти к содержимому

Сколько байт весят пять символов в кодировке unicode

  • автор:

Определить объём текста

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

Информационный вес (объем) символа текста определяется для следующих кодировок:
Unicode UTF-8
Unicode UTF-16
ASCII, ANSI, Windows-1251

Почему на windows сохраняя текст блокноте перенос строки занимает — 4 байта в юникоде или 2 байта в анси?
Это историческое явление, которое берёт начало с дос, последовательность OD OA (\n\r ) в виндовс используются чтоб был единообразный вывод на терминал независимо консоль это или принтер. Но для вывода просто на консоль достаточно только \n.

В юникоде есть символы которые весят 4 байта, например эмоджи: 🙃

Сколько байтов занимает один символ Unicode?

Я немного запутался в кодировках. Насколько я знаю, старые символы ASCII занимали один байт на символ. Сколько байтов требуется для символа Юникода?

Я предполагаю, что один символ Unicode может содержать все возможные символы из любого языка — я прав? Так сколько байт нужно для каждого символа?

А что означают UTF-7, UTF-6, UTF-16 и т. Д.? Это разные версии Unicode?

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

10 ответов

Вы не увидите простого ответа, потому что его нет.

Во-первых, Unicode не содержит «каждого символа из каждого языка», хотя, безусловно, пытается.

Юникод сам по себе является отображением, он определяет кодовые точки, а кодовая точка — это число, связанное обычно с символом. Обычно я говорю, потому что есть такие понятия, как объединение персонажей. Вы можете быть знакомы с такими вещами, как акценты или умлауты. Они могут быть использованы с другим персонажем, таким как a или u создать нового логического персонажа. Следовательно, символ может состоять из 1 или более кодовых точек.

Чтобы быть полезными в вычислительных системах, нам нужно выбрать представление для этой информации. Это различные кодировки Unicode, такие как utf-8, utf-16le, utf-32 и т. Д. Они отличаются в основном размером их кодовых блоков. UTF-32 — простейшая кодировка, она имеет 32-битный кодовый блок, что означает, что отдельная кодовая точка удобно вписывается в кодовый блок. В других кодировках будут ситуации, когда для кодовой точки потребуется несколько кодовых блоков или эта конкретная кодовая точка вообще не может быть представлена ​​в кодировке (это проблема, например, в UCS-2).

Из-за гибкости объединения символов, даже в данной кодировке число байтов на символ может варьироваться в зависимости от символа и формы нормализации. Это протокол для работы с символами, которые имеют более одного представления (можно сказать, «an ‘a’ with an accent» который является 2 кодовыми точками, одна из которых представляет собой комбинацию символов или «accented ‘a'» которая является одной кодовой точкой).

Сколько байт занимает один символ Юникода?

Я немного запутался в кодировках. Насколько я знаю, старые символы ASCII занимали один байт на символ. Сколько байт требуется для символа Юникода?

Я предполагаю, что один символ Юникода может содержать все возможные символы из любого языка — я прав? Итак, сколько байтов нужно для каждого символа?

а что делают UTF-7, UTF-6, UTF-16 и др. в смысле? Это разные версии Юникода?

прочитал статья в Википедии о Unicode но это довольно сложно для меня. Я с нетерпением жду простого ответа.

10 ответов:

вы не увидите простой ответ, потому что его нет.

во-первых, Unicode не содержит «каждый символ из каждого языка», хотя он обязательно пытается.

Юникод сам по себе является отображением, он определяет кодовые точки, А кодовая точка-это число, связанное с обычно символ. Я говорю обычно, потому что есть такие понятия, как сочетание символов. Вы можете быть знакомы с такими вещами, как акценты, или умляуты. Они могут быть использованы с другим персонажем, такие как a или u для создания нового логического символа. Поэтому символ может состоять из 1 или более кодов.

чтобы быть полезным в вычислительных системах, нам нужно выбрать представление для этого информацию. Это различные кодировки Юникода, такие как utf-8, utf-16le, utf-32 и т. д. Они отличаются в основном размером своих кодовых единиц. UTF-32-это самая простая кодировка, она имеет кодовый модуль, который составляет 32 бит, что означает, что индивидуальная кодовая точка подходит комфортно в центр. Другие кодировки будут иметь ситуации, когда кодовая точка будет нуждаться в нескольких кодовых единицах, или эта конкретная кодовая точка вообще не может быть представлена в кодировке (это проблема, например, с UCS-2).

из-за гибкости комбинирования символов, даже в пределах заданной кодировки количество байтов на символ может варьироваться в зависимости от символа и формы нормализации. Это протокол для работы с персонажами, которые имеют более чем одно представление (можно сказать «an ‘a’ with an accent» который является 2 кодовыми точками, одна из которых является объединяющим символом или «accented ‘a'» который является одной кодовой точкой).

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

Итак, быстрый ответ: он занимает от 1 до 4 байт, в зависимости от первого, который укажет, сколько байтов он займет.

обновление

Как prewett указано, что это правило применяется только к UTF-8

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

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

право. На самом деле, поскольку ASCII является 7-битным кодированием, он поддерживает 128 кодов (95 из которых можно распечатать), поэтому он использует только половину байта (если это имеет смысл).

сколько байт делает Юникод характер требуют?

Unicode просто отображает символы в кодовые точки. Он не определяет, как их кодировать. Текстовый файл не содержит символов Юникода, но байты/октеты, которые могут представлять символы Юникода.

я полагаю, что один символ Юникода может содержать все возможные символ из любого языка — я прав?

нет. Но почти. Так что в принципе да. Но все равно нет.

Так сколько байты это нужно на символ?

то же, что и ваш 2-й вопрос.

а что означают UTF-7, UTF-6, UTF-16 и т. д.? Они что-то вроде Юникода версии?

нет, это кодировки. Они определяют, как байты / октеты должны представлять символы Юникода.

пара примеров. Если некоторые из них не могут быть отображены в вашем браузере (вероятно, потому, что шрифт не поддерживает их), перейдите в http://codepoints.net/U+1F6AA (заменить 1F6AA с кодовой точкой в шестнадцатеричном формате), чтобы увидеть изображение.

    • U + 0061 ЛАТИНСКАЯ СТРОЧНАЯ БУКВА A: a
      • Nº: 97
      • UTF-8: 61
      • UTF-16: 00 61
    • U+00A9 ЗНАК АВТОРСКОГО ПРАВА: ©
      • Nº: 169
      • UTF-8: C2 A9
      • UTF-16: 00 A9
    • U+00AE ЗАРЕГИСТРИРОВАННЫЙ ЗНАК: ®
      • Nº: 174
      • UTF-8: C2 AE
      • UTF-16: 00 AE
    • U+1337 ЭФИОПСКИЙ СЛОГ PHWA: ጷ
      • Nº: 4919
      • UTF-8: E1 8C B7
      • UTF-16: 13 37
    • U + 2014 EM DASH: —
      • Nº: 8212
      • UTF-8: E2 80 94
      • UTF-16: 20 14
    • U+2030 ЗА МИЛЛЬ ЗНАК: ‰
      • Nº: 8240
      • UTF-8: E2 80 B0
      • UTF-16: 20 30
    • ЗНАК ЕВРО U+20AC: €
      • Nº: 8364
      • UTF-8: E2 82 AC
      • UTF-16: 20 AC
    • U+2122 ЗНАК ТОРГОВОЙ МАРКИ: ™
      • Nº: 8482
      • UTF-8: E2 84 A2
      • UTF-16: 21 22
    • U+2603 СНЕГОВИК: ☃
      • Nº: 9731
      • UTF-8: E2 98 83
      • UTF-16: 26 03
    • U + 260E ЧЕРНЫЙ ТЕЛЕФОН: ☎
      • Nº: 9742
      • UTF-8: E2 98 8E
      • UTF-16: 26 0E
    • U+2614 ЗОНТИК С КАПЛЯМИ ДОЖДЯ: ☔
      • Nº: 9748
      • UTF-8: E2 98 94
      • UTF-16: 26 14
    • U + 263A БЕЛОЕ УЛЫБАЮЩЕЕСЯ ЛИЦО: ☺
      • Nº: 9786
      • UTF-8: E2 98 BA
      • UTF-16: 26 3A
    • U + 2691 ЧЕРНЫЙ ФЛАГ: ⚑
      • Nº: 9873
      • UTF-8: E2 9A 91
      • UTF-16: 26 91
    • U+269B СИМВОЛ АТОМА: ⚛
      • Nº: 9883
      • UTF-8: E2 9A 9B
      • UTF-16: 26 9B
    • U+2708 САМОЛЕТ: ✈
      • Nº: 9992
      • UTF-8: E2 9C 88
      • UTF-16: 27 08
    • U + 271E ЗАТЕНЕННЫЙ БЕЛЫЙ ЛАТИНСКИЙ КРЕСТ: ✞
      • Nº: 10014
      • UTF-8: E2 9C 9E
      • UTF-16: 27 1E
    • U + 3020 ПОЧТОВЫЙ ЗНАК ЛИЦО: 〠
      • Nº: 12320
      • UTF-8: E3 80 А0
      • UTF-16: 30 20
    • U+8089 CJK UNIFIED IDEOGRAPH-8089: 肉
      • Nº: 32905
      • UTF-8: E8 82 89
      • UTF-16: 80 89
    • U + 1F4A9 КУЧА КАКАШЕК:
      • Nº: 128169
      • UTF-8: F0 9F 92 A9
      • UTF-16: D8 3D DC A9
    • U+1F680 ROCKET:
      • Nº: 128640
      • UTF-8: F0 9F 9A 80
      • UTF-16: D8 3D DE 80

ОК Я уже увлекся.

  • если вы ищете конкретный символ, вы можете скопировать и вставить его на http://codepoints.net/.
  • я потратил много времени на этот бесполезный список (но он отсортирован!).
  • MySQL имеет кодировку под названием «utf8», которая на самом деле не поддерживает символы длиной более 3 байт. Так что вы не можете вставить кучу ПУ, поле будет просто обрезаются. Использовать «utf8» вместо этого.
  • здесь тестовая страница снеговика (unicodesnowmanforyou.com).

проще говоря Unicode — это стандарт, который присваивает один номер (называемый кодовой точкой) всем символам мира (его работа все еще продолжается).

теперь вам нужно представить этот код точки с помощью байтов, что называется character encoding . UTF-8, UTF-16, UTF-6 способы представления этих символов.

UTF-8 — это многобайтовая кодировка. Символы могут иметь от 1 до 6 байт (некоторые из них могут не потребоваться прямо сейчас).

UTF-32 каждый символ имеет 4 байта характер.

UTF-16 использует 16 бит для каждого символа, и он представляет только часть символов Unicode, называемых BMP (для всех практических целей его достаточно). Java использует эту кодировку в своих строках.

  1. составленные символы, где вместо использования объекта символа, который уже акцентирован / диакритический (À), пользователь решил объединить акцент и базовый символ (`A).
  2. кодовые точки. Кодовые точки-это метод, с помощью которого UTF-кодировки позволяют кодировать больше, чем обычно позволяет количество бит, которое дает им их имя. Например, UTF-8 обозначает определенные байты, которые сами по себе являются недопустимыми, но когда за ними следует допустимый байт продолжения, это позволит описать символ за пределами 8-битного диапазона 0..255. Смотрите примеры и слишком длинные кодировки ниже в статье Википедии на UTF-8.
    • отличный пример, приведенный там, что € символ (кодовая точка U+20AC может быть представлена как три-байт последовательность E2 82 AC или четыре-байт последовательность F0 82 82 AC .
    • оба действительны, и это показывает, насколько сложным является ответ, когда речь идет о «Unicode», а не о конкретной кодировке Unicode, такой как UTF-8 или UTF-16.

в UTF-8:

в UTF-16:

в UTF-32:

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

Это также самая большая кодовая точка UTF-8 может кодироваться в 4 байта, но идея кодирования UTF-8 также работает для 5 и 6 байтовых кодировок для покрытия кодовых точек до 7FFFFFFF, т. е. половина того, что может UTF-32.

Ну я просто вытащил страницу Википедии на нем тоже, и в вводной части я увидел «Unicode может быть реализован различными кодировками символов. Наиболее часто используемые кодировки-UTF-8 (который использует один байт для любых символов ASCII, которые имеют одинаковые значения кода как в кодировке UTF-8, так и в кодировке ASCII, и до четырех байтов для других символов), теперь устаревший UCS-2 (который использует два байта для каждого символа, но не может кодировать каждый символ в текущем Unicode стандартный)»

Как показывает эта цитата, ваша проблема заключается в том, что вы предполагаете, что Unicode является единственным способом кодирования символов. На самом деле существует несколько форм Юникода, и, опять же в этой цитате, один из них даже имеет 1 байт на символ, как и то, к чему вы привыкли.

Итак, ваш простой ответ, который вы хотите, заключается в том, что он меняется.

для UTF-16 символу требуется четыре байта (две единицы кода), если он начинается с 0xD800 или больше; такой символ называется «суррогатной парой».»Более конкретно, суррогатная пара имеет вид:

где [. ] обозначает двухбайтовый кодовый блок с заданным диапазоном. Все, что = 0xE000 недопустимо (за исключением маркеров спецификации, возможно).

посмотреть http://unicodebook.readthedocs.io/unicode_encodings.html, раздел 7.5.

зацените Unicode code converter. Например, введите 0x2009 , где 2009-Это номер Юникода для тонкого пространства, в «0x. поле «нотация» и нажмите кнопку Преобразовать. Шестнадцатеричное число E2 80 89 (3 байта) появляется в поле «кодовые единицы UTF-8».

Сколько весит один символ в кодировке Unicode?

Сколько бит занимает это предложение в кодировке Unicode?

В кодировке ASCII занимает 88 бит, или 11 байт. В кодировке UNICODE занимает 176 бит, или 22 байта. Следует помнить, что пробел между словами в тексте является символом, и он также вводится с клавиатуры и сохраняется в памяти.

https://amdy.su/wp-admin/options-general.php?page=ad-inserter.php#tab-8

Сколькими битами кодируется 1 символ в кодировке Unicode?

UTF-32, 32-битное кодирование с фиксированной шириной. Это три самых популярных разных кодировки. в UTF-32 каждый символ кодируется как одно 32-битное слово.

Сколько символов в кодировке Unicode?

Впрочем, даже и этого в данный момент более чем достаточно — в версии 13.0 используется всего 143 859 кодовых позиций. Кодовое пространство разбито на 17 плоскостей (англ. planes) по 216 (65 536) символов.

Сколько весит один символ в UTF-16?

Правильный ответ 2-4. Утверждение: «Каждый символ в UTF-16 занимает 2 или 3 или 4 байта», — верно.

Сколько бит в одной букве?

Так вот 1 символ двоичной системы (0 или 1) занимает в памяти компьютера 1 бит. Итак, даже одна буква или цифра в компьютере будет занимать пространство в 1 байт на жестком диске (ведь для её кодировки нужно восемь нулей и единиц).

Сколько весит 1 символ в UTF 8?

2 либо 4 байта, смотря какой юникод. Текст, состоящий только из символов Юникода с номерами меньше 128, при записи в UTF-8 превращается в обычный текст ASCII. И наоборот, в тексте UTF-8 любой байт со значением меньше 128 изображает символ ASCII с тем же кодом.

Сколько битов занимает каждый символ в памяти компьютера при Восьмиразрядной кодировке символов?

Вес одного символа, набранного на компьютере, зависит от того, какую кодировку используют. Чаще всего используется восьмиразрядная кодировка, т. е. один символ «весит» 8 бит.

Сколькими байтами кодируется 1 символ в обычных кодировках?

Один символ кодировки UTF-16 представлен последовательностью двух байт или двух пар байт.

Сколько битов на символ?

Символ ASCII в 8-разрядной кодировке ASCII составляет 8 бит (1 байт), хотя он может поместиться в 7 бит. Символ ISO-8895-1 в кодировке ISO-8859-1 составляет 8 бит (1 байт). Символ Unicode в кодировке UTF-8 находится между 8 битами (1 байт) и 32 битами (4 байта).

Сколько символов в UTF-8?

Текст, состоящий только из символов Юникода с номерами меньше 128, при записи в UTF-8 превращается в обычный текст ASCII. И наоборот, в тексте UTF-8 любой байт со значением меньше 128 изображает символ ASCII с тем же кодом.

Сколько байтов занимает каждая русская буква в кодировке UTF-8?

Изначально кодировка UTF-8 допускала использование до шести байтов для кодирования одного символа, однако в ноябре 2003 года стандарт RFC 3629 запретил использование пятого и шестого байтов, а диапазон кодируемых символов был ограничен символом U+10FFFF .

Какие символы можно использовать в пароле?

  • Заглавные латинские буквы: от A до Z (26 символов)
  • Строчные латинские буквы: от a до z (26 символов)
  • Цифры от 0 до 9 (10 символов)
  • Символы: (пробел) ! » # $ % & ‘ ( ) * + , — . / : ; < = > ? @ [ \ ] ^ _`

Зачем нужен UTF-16?

UTF-16 (англ. Unicode Transformation Format) в информатике — один из способов кодирования символов из Юникода в виде последовательности 16-битных слов. Данная кодировка позволяет записывать символы Юникода в диапазонах U+0000..

Что такое UTF-16 и UTF-8?

UTF-8 – стандарт кодирования, преобразующий номера ячеек таблицы Юникод в бинарные коды с использованием переменного количества бит: 8, 16, 24 или 32. UTF-16 – стандарт кодирования, преобразующий номера ячеек таблицы Юникод в бинарные коды с использованием переменного количества бит:16 или 32.

Сколько весит один символ в ascii?

к. 256 = 28, то вес 1 символа – 8 бит. Единице в 8 бит присвоили свое название — байт.

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

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