В виде чего представляется текстовая информация на пк
Cимвол
Действие
Английское название
Подача стандартного звукового сигнала
Затереть предыдущий символ
Конец текстового файла
Отмена предыдущего ввода
К изображаемым символам в ASCII относятся буквы английского (латинского) алфавита (заглавные и прописные), цифры, знаки препинания и арифметических операций, скобки и некоторые специальные символы. Фрагмент кодировки ASCII приведён в таблице.
Символ
Десятичный код
Двоичный код
Символ
Десятичный код
Двоичный код
Хотя в ASCII символы кодируются `7`-ю битами, в памяти компьютера под каждый символ отводится ровно `1` байт (`8` бит). И получается, что один бит из каждого байта не используется.
Впоследствии использование кодовых таблиц было несколько упорядочено: каждой кодовой таблице было присвоено особое название и номер. Указав кодовую таблицу, автоматически выбирают и язык, которым можно пользоваться в дополнение к английскому; точнее, выбирается то, как будут интерпретироваться символы с кодами более `127`.
Для русского языка наиболее распространёнными являются однобайтовые кодовые таблицы СР-`866`, Windows-`1251`, ISO `8859-5` и КОИ-`8`. В них первые `128` символов совпадают с ASCII-кодировкой, а русские буквы помещены во второй части таблицы (с номерами `128-255`), однако коды русских букв в этих кодировках различны! Сравните, например, кодировки КОИ-`8` (Код Обмена Информацией `8`-битный, международное название «koi-`8`r») и Windows-`1251`, фрагменты которых приведены в таблицах на странице `13`.
Несовпадение кодовых таблиц приводит к ряду неприятных эффектов: один и тот же текст (неанглийский) имеет различное компьютерное представление в разных кодировках, соответственно, текст, набранный в одной кодировке, будет нечитабельным в другой!
Однобайтовые кодировки обладают одним серьёзным ограничением: количество различных кодов символов в отдельно взятой кодировке недостаточно велико, чтобы можно было пользоваться одновременно несколькими языками. Для устранения этого ограничения в 1993-м году был разработан новый стандарт кодирования символов, получивший название Unicode, который, по замыслу его разработчиков, позволил бы использовать в текстах любые символы всех языков мира.
В современных компьютерах и операционных системах используется укороченная, `16`-битная версия Unicode, в которую входят все современные алфавиты; эта часть Unicode называется базовой многоязыковой страницей (Base Multilingual Plane, BMP).
В виде чего представляется текстовая информация на пк
Юнико́д — стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков. Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода». Применение этого стандарта позволяет закодировать очень большое число символов из разных письменностей: в документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, при этом становится ненужным переключение кодовых страниц. Стандарт состоит из двух основных разделов: универсальный набор символов и семейство кодировок. Универсальный набор символов задаёт однозначное соответствие символов кодам — элементам кодового пространства, представляющим неотрицательные целые числа. Семейство кодировок определяет машинное представление последовательности кодов UCS. Коды в стандарте Юникод разделены на несколько областей. Область с кодами от U+0000 до U+007F содержит символы набора ASCII с соответствующими кодами. Далее расположены области знаков различных письменностей, знаки пунктуации и технические символы. Часть кодов зарезервирована для использования в будущем. Под символы кириллицы выделены области знаков с кодами от U+0400 до U+052F, от U+2DE0 до U+2DFF, от U+A640 до U+A69F (см. Кириллица в Юникоде).
Универсальная система кодирования (Юникод) представляет собой набор графических символов и способ их кодирования для компьютерной обработки текстовых данных. Графические символы — это символы, имеющие видимое изображение. Графическим символам противопоставляются управляющие символы и символы форматирования. Графические символы включают в себя следующие группы: буквы, содержащиеся хотя бы в одном из обслуживаемых алфавитов; цифры; знаки пунктуации; специальные знаки (математические, технические, идеограммы и пр.); разделители. Юникод — это система для линейного представления текста. Символы, имеющие дополнительные над- или подстрочные элементы, могут быть представлены в виде построенной по определённым правилам последовательности кодов (составной вариант, composite character) или в виде единого символа (монолитный вариант, precomposed character).
Модифицирующие символы Графические символы в Юникоде подразделяются на протяжённые и непротяжённые (бесширинные). Непротяжённые символы при отображении не занимают места в строке. К ним относятся, в частности, знаки ударения и прочие диакритические знаки. Как протяжённые, так и непротяжённые символы имеют собственные коды. Протяжённые символы иначе называются базовыми, а непротяжённые — модифицирующими; причём последние не могут встречаться самостоятельно. Например, символ «á» может быть представлен как последовательность базового символа «a» (U+0061) и модифицирующего символа « ́» (U+0301) или как монолитный символ «á» (U+00C1). Особый тип модифицирующих символов — селекторы варианта начертания. Они действуют только на те символы, для которых такие варианты определены. В версии 5.0 варианты начертания определены для ряда математических символов, для символов традиционного монгольского алфавита и для символов монгольского квадратного письма.
Термины «композиция» и «декомпозиция» понимают под собой соответственно соединение или разложение символов на составные части.
Примеры
Исходный текст
NFD
NFC
NFKD
NFKC
Français
Franc\u0327ais
Fran\xe7ais
Franc\u0327ais
Fran\xe7ais
А, Ё, Й
\u0410, \u0415\u0308, \u0418\u0306
\u0410, \u0401, \u0419
\u0410, \u0415\u0308, \u0418\u0306
\u0410, \u0401, \u0419
が
\u304b\u3099
\u304c
\u304b\u3099
\u304c
Henry IV
Henry IV
Henry IV
Henry IV
Henry IV
Henry Ⅳ
Henry \u2163
Henry \u2163
Henry IV
Henry IV
Юникод включает практически все современные письменности, в том числе: арабскую, армянскую, бенгальскую, бирманскую, глаголицу, греческую, грузинскую, деванагари, еврейскую, кириллицу, китайскую (китайские иероглифы активно используются в японском языке, а также достаточно редко в корейском), коптскую, кхмерскую, латинскую, тамильскую, корейскую (хангыль), чероки, эфиопскую, японскую (которая включает в себя кроме китайских иероглифов ещё и слоговую азбуку), и другие.
С академическими целями добавлены многие исторические письменности, в том числе: руны, древнегреческая, египетские иероглифы, клинопись, письменность майя, этрусский алфавит.
Способы представления Юникод имеет несколько форм представления: UTF-8, UTF-16 (UTF-16BE, UTF-16LE) и UTF-32 (UTF-32BE, UTF-32LE). Была разработана также форма представления UTF-7 для передачи по семибитным каналам, но из-за несовместимости с ASCII она не получила распространения и не включена в стандарт. 1 апреля 2005 годабыли предложены две шуточные формы представления: UTF-9 и UTF-18 (RFC 4042). В Microsoft Windows NT и основанных на ней системах Windows 2000 и Windows XP в основном используется форма UTF-16LE. В UNIX-подобных операционных системах GNU/Linux,BSD и Mac OS X принята форма UTF-8 для файлов и UTF-32 или UTF-8 для обработки символов в оперативной памяти.
UTF-8 UTF-8 — представление Юникода, обеспечивающее наилучшую совместимость со старыми системами, использовавшими 8-битные символы. Текст, состоящий только из символов с номером меньше 128, при записи в UTF-8 превращается в обычный текст ASCII. И наоборот, в тексте UTF-8 любой байт со значением меньше 128 изображает символ ASCII с тем же кодом. Остальные символы Юникода изображаются последовательностями длиной от 2 до 6 байт (на деле, только до 4 байт, поскольку в Юникоде нет символов с кодом больше 10FFFF, и вводить их в будущем не планируется), в которых первый байт всегда имеет вид 11xxxxxx, а остальные — 10xxxxxx. Формат UTF-8 был изобретён 2 сентября 1992 года Кеном Томпсоном и Робом Пайком и реализован в Plan 9. Сейчас стандарт UTF-8 официально закреплён в документах RFC 3629 и ISO/IEC 10646 Annex D. Символы UTF-8 получаются из Unicode следующим образом:
Порядок байтов В потоке данных UTF-16 старший байт может записываться либо перед младшим, либо после младшего. Аналогично существует два варианта четырёхбайтной кодировки — UTF-32BE и UTF-32LE. Для определения формата представления Юникода в начало текстового файла записывается сигнатура — символ U+FEFF (неразрывный пробел с нулевой шириной), также именуемыйметкой порядка байтов (англ. byte order mark, BOM). Это позволяет различать UTF-16LE и UTF-16BE, поскольку символа U+FFFE не существует. Также этот способ иногда применяется для обозначения формата UTF-8, хотя к этому формату и неприменимо понятие порядка байтов. Файлы, следующие этому соглашению, начинаются с таких последовательностей байтов:UTF-8 EF BB BFUTF-16BE FE FFUTF-16LE FF FEUTF-32BE 00 00 FE FFUTF-32LE FF FE 00 00 К сожалению, этот способ не позволяет надёжно различать UTF-16LE и UTF-32LE, поскольку символ U+0000 допускается Юникодом (хотя реальные тексты редко начинаются с него). Файлы в кодировках UTF-16 и UTF-32, не содержащие BOM, должны иметь порядок байтов big-endian (unicode.org).
Юникод и традиционные кодировки Внедрение Юникода привело к изменению подхода к традиционным 8-битным кодировкам. Если раньше кодировка задавалась шрифтом, то теперь она задаётся таблицей соответствия между данной кодировкой и Юникодом. Фактически 8-битные кодировки превратились в форму представления некоторого подмножества Юникода. Это намного упростило создание программ, которые должны работать с множеством разных кодировок: теперь, чтобы добавить поддержку ещё одной кодировки, надо всего лишь добавить ещё одну таблицу перекодировки в Юникод. Кроме того, многие форматы данных позволяют вставлять любые символы Юникода, даже если документ записан в старой 8-битной кодировке. Например, в HTML можно использоватькоды с амперсандом.
Реализации Большинство современных операционных систем в той или иной степени обеспечивают поддержку Юникода. В операционных системах семейства Windows NT для внутреннего представления имён файлов и других системных строк используется двухбайтовая кодировка UTF-16LE. Системные вызовы, принимающие строковые параметры, существуют в однобайтном и двухбайтном вариантах. Подробнее см. в статье Юникод в операционных системах Microsoft. UNIX-подобные операционные системы, в том числе GNU/Linux, BSD, Mac OS X, используют для представления Юникода кодировку UTF-8. Большинство программ могут работать с UTF-8 как с традиционными однобайтными кодировками, не обращая внимания на то, что символ представляется как несколько последовательных байт. Для работы с отдельными символами строки обычно перекодируются в UCS-4, так что каждому символу соответствует машинное слово. Одной из первых успешных коммерческих реализаций Юникода стала среда программирования Java. В ней принципиально отказались от 8-битного представления символов в пользу 16-битного. Сейчас большинство языков программирования поддерживают строки Юникода, хотя их представление может различаться в зависимости от реализации.
Методы ввода Поскольку ни одна раскладка клавиатуры не может позволить вводить все символы Юникода одновременно, от операционных систем и прикладных программ требуется поддержка альтернативных методов ввода произвольных символов Юникода.
Microsoft Windows Начиная с Windows 2000, служебная программа «Таблица символов» (charmap.exe) показывает все символы в ОС и позволяет копировать их в буфер обмена. Похожая таблица есть, например, в Microsoft Word. Иногда можно набрать шестнадцатеричный код, нажать Alt+X, и код будет заменён на соответствующий символ, например, в WordPad, Microsoft Word. В редакторах Alt+X выполняет и обратное преобразование. Во многих программах MS Windows, чтобы получить символ Unicode, нужно при нажатой клавише Alt набрать десятичное значение кода символа на цифровой клавиатуре. Например, полезными при наборе кириллических текстов будут комбинации Alt+0171 («) и Alt+0187 (»). Интересны также комбинации Alt+0133 (…) и Alt+0151 (—).
Macintosh В Mac OS 8.5 и более поздних версиях поддерживается метод ввода, называемый «Unicode Hex Input». При зажатой клавише Option требуется набрать четырёхзначный шестнадцатеричный код требуемого символа. Этот метод позволяет вводить символы с кодами, большими U+FFFF, используя пары суррогатов; такие пары операционной системой будут автоматически заменены на одиночные символы. Этот метод ввода перед использованием нужно активизировать в соответствующем разделе системных настроек и затем выбрать как текущий метод ввода в меню клавиатуры. Начиная с Mac OS X 10.2, существует также приложение «Character Palette», позволяющее выбирать символы из таблицы, в которой можно выделять символы определённого блока или символы, поддерживаемые конкретным шрифтом.
GNU/Linux В GNOME также есть утилита «Таблица символов», позволяющая отображать символы определённого блока или системы письма и предоставляющая возможность поиска по названию или описанию символа. Когда код нужного символа известен, его можно ввести в соответствии со стандартом ISO 14755: при зажатых клавишах Ctrl и Shift ввести шестнадцатеричный код (начиная с некоторой версии GTK+ ввод кода нужно предварить нажатием клавиши «U»). Вводимый шестнадцатеричный код может иметь до 32 бит в длину, позволяя вводить любые символы Юникода без использования суррогатных пар. Все приложения X Window, включая GNOME и KDE, поддерживают ввод при помощи клавиши Compose. Для клавиатур, на которых нет отдельной клавиши Compose, для этой цели можно назначить любую клавишу — например, Caps Lock. Консоль GNU/Linux также допускает ввод символа Юникода по его коду — для этого десятичный код символа нужно ввести цифрами расширенного блока клавиатуры при зажатой клавише Alt. Можно вводить символы и по их шестнадцатеричному коду: для этого нужно зажать клавишу AltGr, и для ввода цифр A—F использовать клавиши расширенного блока клавиатуры от NumLock до Enter (по часовой стрелке). Поддерживается также и ввод в соответствии с ISO 14755. Для того чтобы перечисленные способы могли работать, нужно включить в консоли режим Юникода вызовом unicode_start(1) и выбрать подходящий шрифт вызовом setfont(8). Mozilla Firefox для Linux поддерживает ввод символов по ISO 14755. источник
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобрев в каталоге.
Получите невероятные возможности
Конспект урока «Представление текста в компьютере»
· использование таблицы кодировок;
· информационный объём текста.
Компьютер может работать с пятью видами информации:
Одним из самых массовых приложений ЭВМ является работа с текстами.
Имея компьютер, можно создавать тексты, не тратя на это много времени и бумагу. Носителем текста становится память компьютера. Текст на внешних носителях сохраняется в виде файла.
Как вы уже знаете, вся информация, независимо от того, какая она графическая, видео или звуковая, представляется в компьютере с помощью чисел, это всего два символа двоичного кода, 0 и 1, которые легко перевести в сигналы.
Прежде всего, вспомним о байтовом принципе организации памяти компьютера.
Как вы помните, каждая клетка обозначает бит памяти. Восемь подряд идущих битов образуют байт памяти. Байты пронумерованы. Порядковый номер байта определяет его адрес в памяти компьютера. По этим адресам процессор обращается к данным, считывает их или записывает в память.
Схема представления текста в памяти компьютера очень проста. Каждая буква алфавита, цифра, знак препинания или любой другой символ необходимый для записи текста обозначается определённым двоичным кодом, длина которого фиксирована.
Например, в системах кодировки Windows – 1251 и KОИ-8 каждый символ заменяется на восьмиразрядное целое положительное двоичное число, оно хранится в одном байте памяти. Это число является порядковым номером символа в кодовой таблице.
Мы уже говорили о том, что разрядность ячейки памяти i и количество различных целых положительных чисел, которые можно записать в эту ячейку n связаны соотношением:
Восьмиразрядный двоичный код позволяет получить 256 различных кодовых комбинаций, то есть 2 8 = 256.
С помощью 256 кодовых комбинаций можно закодировать все символы двух алфавитов (английского и русского) и все остальные дополнительные символы, расположенные на клавиатуре компьютера — цифры и знаки арифметических операций, знаки препинания и скобки и так далее, а также ряд управляющих символов, без которых невозможно создание текстового документа (удаление предыдущего символа, переход на новую строку, пробел и другие).
Мощность алфавита равна 256 символов. Сколько Килобайт памяти потребуется для сохранения 160 страниц текста, содержащего в среднем 192 символа на каждой странице?
В современном мире около 6700 живых языков и около 25 алфавитов.
8-разрядной кодировки хватает, для того чтобы можно было одновременно пользоваться не более чем двумя языками. Для того чтобы на компьютере можно было устанавливать больше языков был разработан новый стандарт кодирования символов, получивший название Юникод.
Юнико́д или Унико́д (англ. Unicode) — стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков.
Он является результатом сотрудничества Международной организации по стандартизации (ISO) с ведущими производителями компьютеров и программного обеспечения.
Этот стандарт был предложен в 1991 году некоммерческой организацией «Консорциум Юникода». С помощью этого стандарта можно закодировать очень большое число символов из разных письменностей: в документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, при этом становится ненужным переключение кодовых страниц.
В Юникод каждый символ кодируется 16-битовым двоичным кодом, то есть два байта на символ. В данном случае можно закодировать 2 16 = 65536 различных символов.
Однако в последнее время объединение Unicode приступило к кодированию письменности мёртвых языков и в этом случае 16-битового кодирования уже недостаточно. Поэтому Unicode приступил к освоению новых кодов.
Иногда, работая с электронной почтой, программа может запросить нас воспользоваться кодировкой Unicode для пересылаемых сообщений. В таком случае можно избавиться от проблемы несоответствия кодировок, по которой иногда не удаётся прочесть русский текст.
Текстовый документ, который хранится в памяти компьютера, состоит из кодов символьного алфавита, кодов управления форматами текста. Также текстовые процессоры, например, Microsoft Word позволяют включать и редактировать такие объекты как таблицы, оглавления, ссылки и гиперссылки, историю вносимых изменений и так далее. Все это также представляется в виде последовательности байтовых кодов.
Вам известно, что информационный объём сообщения I равен произведению количества символов К в сообщении умноженному на информационный вес символа алфавита i:
В зависимости от разрядности используемой кодировки информационный вес символа текста, создаваемого на компьютере, может быть равен:
• 8 бит или 1 байт — если используется восьмиразрядная кодировка;
• 16 бит или 2 байта — если используется шестнадцатиразрядная кодировка.
Информационным объёмом фрагмента текста будем называть количество битов, байтов или производных единиц (килобайтов, мегабайтов и так далее), необходимых для записи этого фрагмента заранее оговорённым способом двоичного кодирования.
Информационный объем текста, набранного на компьютере с использованием кодировки UNICODE равен 4 Килобайта. Определить количество символов в тексте.
Как мы уже говорили бывают случаи, когда, работая с текстом, программа может запросить воспользоваться другой кодировкой, например, текст в восьмибитном коде Windows перекодировать в кодировку Unicode. Давайте выясним, что произойдёт с информационным объёмом текста.
Итак, рассмотрим такой пример.
Информационное сообщение на русском языке, первоначально записанное в 8-битной кодировке Windows, было перекодировано в 16-битную кодировку Unicode. В результате информационный объём сообщения стал равен 2 Мегабайта. Нужно найти количество символов в сообщении.
Соответствие между изображениями и кодами символов устанавливается с помощью кодовых таблиц.
Существуют 8-разрядные таблицы кодировки – это ASCII, КОИ-8 и другие. А также 16-разрядная кодовая таблица Юникод.
В зависимости от разрядности используемой кодировки информационный вес символа текста, создаваемого на компьютере, может быть равен:
• 8 бит (1 байт) — если используется 8-разрядная кодировка;
• 16 бит (2 байта) — если используется 16-разрядная кодировка.
Информационный объём фрагмента текста — это количество битов, байтов и производных единиц, необходимых для записи фрагмента оговорённым способом кодирования.