Научная статья на тему 'ПЕРЕКОДИРОВКА И ОБРАБОТКА СТРОК: ОТ ASCII К ANCI/DBCS И UNICODE'

ПЕРЕКОДИРОВКА И ОБРАБОТКА СТРОК: ОТ ASCII К ANCI/DBCS И UNICODE Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
64
5
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОДИРОВАНИЕ / НАБОР СИМВОЛОВ / ТАБЛИЦА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Овчинникова А.А., Толоконцева А.С., Валагов Д.А.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

TRANSCODING AND PROCESSING LINES: FROM ASCII TO ANCI / DBCS AND UNICODE

This article discusses the appearance of encoding tables; transition to new tables corresponding to modern requests; examples of encoding tables.

Текст научной работы на тему «ПЕРЕКОДИРОВКА И ОБРАБОТКА СТРОК: ОТ ASCII К ANCI/DBCS И UNICODE»

УДК 003.09

Овчинникова А. А. студент 3 курса направление подготовки Информационные системы и технологии

Толоконцева А. С. студент 3 курса направление подготовки Информационные системы и технологии

Валагов Д.А. студент 4 курса направление подготовки Информационные системы и технологии ФГБОУ ВО «Поволжский государственный университет телекоммуникаций и информатики»

Россия, г. Самара

ПЕРЕКОДИРОВКА И ОБРАБОТКА СТРОК: ОТ ASCII К ANCI/DBCS

И UNICODE

Аннотация:

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

Ключевые слова:

ASCII, ANCI, DBCS, Unicode, кодирование, набор символов, таблица.

Ovchinnikova A.A.

student of the 3rd year of training Information systems and technologies FGBOU VO "Volga State University of Telecommunications and Informatics"

Russia, Samara Tolokontseva A.S.

student of the 3rd year of training Information systems and technologies FGBOU VO "Volga State University of Telecommunications and Informatics"

Russia, Samara Valagov D.A.

student 4 courses of training Information systems and technologies FBBOU VO "Volga State University of Telecommunications and Informatics"

Russia, Samara

TRANSCODING AND PROCESSING LINES: FROM ASCII TO ANCI / DBCS AND UNICODE

Summary:

This article discusses the appearance of encoding tables; transition to new tables corresponding to modern requests; examples of encoding tables. Keywords:

ASCII, ANCI, DBCS, Unicode, coding, character set, table.

Задача оптимальной кодировки символов, берет свое начало с создания телеграфа, где применялось 4-х битовое шифрование. 5-й разряд на перфоленте был контрольным. Затем, чтобы перейти от одного набора символов к другому, использовали особые символы «смены регистра». На смену этому шифру пришел 7-битовый (8-й контрольный), который позволял умещаться одному языку (русскому или английскому) полностью. Он положил основу системе ASCII (American Standard Code for Information Interchange) еще до разработки современных компьютеров.

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

По результатам «локализации» ПО для зарубежных стран (СССР в частности) проблема решалась заменой нижнего регистра английского алфавита. Следственно, до конца 80-х годов советские программисты могли работать только с верхним регистром русского и английского алфавита.

Переход к системе ANSI (American National Standards Institute) и DBCS (Double-Byte Character Set) стал решением проблемы, связанной с использованием иностранных языков. ANSI и сегодня является в наибольшей степени популярным символьным стандартом для ПК, в котором используется 8-битовое кодирование (до 256 кодов). Его основой является традиционная (основная) таблица ASCII (0—127), дополненная еще 128 символами, которые иногда называют «расширенной» таблицей ASCII. По этой причине ANSI нередко называют расширенным вариантом ASCII (или даже ассоциируют с ASCII, что в действительности не совсем правильно).

Часто применяется ANSI для европейских языков, основанных на классическом латинском алфавите, которые могут иметь дополнительные символы или видоизмененные буквы по типу «A с точкой», «I с двумя точками» и прочее.

В свою очередь в дополнительный набор символов смогла вместиться и кириллица (русский язык), но с кое-какими проблемами. Оказывается, что многие коды из состава таблицы 128-255 уже были использованы (без соответствующей стандартизации) в ряде программ. В качестве классических примеров можно вспомнить русскую «р», которую не признавал Norton Commander 3.0 для DOS, или FoxBase, который считал русскую «Н» переводом строки.

Довольно много было подобных случаев «наследия» из прошлого и именно этим во многом объясняется наличие «панъевропейских версий» Windows до 95 включительно. Использование таких не стандартизированных спецсимволов требовало специальной коррекции кода.

В прочем, многим языкам (в основном азиатским) 128 дополнительных символов не хватало. Благодаря этому появляется систему DBCS, которая строится по другому принципу. Для латинских букв она использует

кодировку ASCII (0—127), плюс для своих собственных символов (японский набор включает около 12 тыс. символов) она использует двухбайтовый набор, когда первый код (128—255) выполняет функцию упреждающего, а следующий является его дополнением. Легко посчитать, что такая кодировка позволяет использовать 32K+128 символов.

UniCode — это схема кодирования символов, которая использует на каждый символ два байта: первый байт определяет номер набора символов, второй — собственно код символа. Например, набор символов английского и западноевропейских языков (cp1252) имеет код первого байта 0, восточноевропейских (cp1250) — 1, русского (кириллица, cp1251) — 4.

Международная организация по стандартизации продвигает UniCode, как универсальный единый стандарт. Программное обеспечение переживает трудный переход от ANSI/DBCS к Unicode, потому что приходится использовать смешанные варианты кодировки из-за огромного информационного наследия. В частности, это в большинстве своем определяет значительный беспорядок с преобразованием кодов символов (можно рассмотреть на примере VB).

Типичным примером является Microsoft Windows 9x, ядро и WinAPI которой по-прежнему используют кодировку ANSI/DBCS. Однако многие ее компоненты, а также автономные приложения (в частности, VB и Office) применяют Unicode (см. таблицу 1).

Несмотря на то, что, хотя Unicode и DBCS имеют двухбайтовые символы и покрывают набор символов примерно одного объема, их схемы кодирования совершенно различны. На взгляд программиста важным различием является то, что ANSI использует только один байт на символ, Unicode - строго два байта, а DBCS - 1-2 байта, в зависимости от используемых символом.

Более того, популярной проблемой русского языка является наличие нескольких однобайтовых кодировок символов. Собственно, ANSI кодировкой для кириллицы является таблица Windows cp1251._

16-битный код Символы 16-битный код Символы

0000-007F ASCII 0300-U36F Общие диакритические

0080-00FF Символы Latin 1 0400-04FF Кириллица

0100-017F Европейские латинские 0530-058F Армянский

01 80-01FF Расширенные латинские 0590-05FF Еврейский

0250-02AF Стандартные фонетические 0600-06FF Арабский

02BO-02FF Модифицированные литеры 0900-097F Деванагари

Таблица 1

Unicode: UTF-8, UTF-16, UTF-32

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

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

■ тип символа (прописная буква, строчная буква, цифра, знак препинания и т.д.);

■ принадлежность символа (отображение слева направо или справа налево, пробел, разрыв строки и т.д.);

■ соответствующая прописная или строчная буква (для строчных и прописных букв соответственно);

■ соответствующее числовое значение (для цифровых символов). Узнать числовое значение символа возможно с помощью различных

сайтов с таблицами Unicode или сайтами конверторами текста.

Использованные источники:

1. http://fontproblem.narod.rU/index.html7http://fontproblem.narod.ru/crosref/fro m_ASCII_to_Unicode.htm (дата обращения 17.09.2017)

2. https://wiki.dieg.info/unicode (дата обращения 17.09.2017)

УДК 004

Очкуренко Г.О. студент 3 курса Литвиненко В.А. студент 3 курса

факультет «Информационных систем и технологий» Поволжский Государственный Университет Телекоммуникаций и Информатики научный руководитель: Тучкова А. С.

старший преподаватель кафедра Информационные системы и технологии ФГБОУ ВО «Поволжский государственный университет

телекоммуникаций и информатики»

Россия, г. Самара АНАЛИЗ ВРЕДОНОСНОЙ ПРОГРАММЫ WANNACRY Аннотация. В статье рассмотрена вредоносная программа с помощью которой совершилась крупнейшая кибератака за последние несколько лет, а также произведен ее анализ.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.