Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Отображение текстовой информации на экране






Для работы с текстами создано большое количество программ. Программы создания и редактирования текстов, программы верстки, макетирования и т.д.

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

При сохранении текстов в компьютере каждому символу присваивается определенный код. Для кодирования нескольких десятков европейских языков, использующих латинский алфавит, достаточно иметь полторы сотни символов. Каждый язык, базирующийся на собственном национальном алфавите, требует примерно сотни символов. Это славянские языки, греческий, иврит, арабский, санскрит и др. Для китайского, корейского и других языков, основанных на иероглифах, счет символов идет уже не на сотни, а на тысячи. Если учесть, что во многих областях человеческой деятельности используются специальные символы, например, для записи математических формул, то количество символов универсального алфавита уверенно приближается к десяткам тысячам.

Первоначально в персональных компьютерах на один символ отводился один байт (восемь двоичных разрядов). В такой системе кодирования можно записать 256 символов. Исторически ситуация сложилась так, что стандартизованы только 128 символов с номерами (кодами) от 0 до 127. Они называются символами ASCII (American Standard Code for Information Interchange, американский стандартный код обмена информацией) и составляют первую половину таблицы символов, т.н. кодовой таблицы. В состав ASCII входят важные управляющие символы, прописные и строчные буквы латинского алфавита, цифры, знаки препинания и некоторые спецсимволы.

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

Набор ASCII является общим для большинства компьютерных платформ и операционных систем. А варианты расширения наборов, обычно " выросшие" из национальных стандартов, имеют значительные различия. Существует несколько стандартов расширенных наборов символов, которые определяют содержание всех 256 символов: ANSI, КОИ-8, EBCDIC, CP1251 и др. ANSI — это стандартная кодировка для платформы Windows, КОИ-8 широко используется различными версиями операционной системы Unix, кодировка EBCDIC применяется на машинах класса mainframe.

Самой решительной попыткой преодолеть недостатки систем кодирования, основанных на однобайтовом представлении символов, является стандарт Unicode (ISO 10646).

Стандарт Unicode был разработан с целью создания единой кодировки символов всех современных и многих древних письменных языков. Каждый символ в этом стандарте кодируется 16 битами, что позволяет ему охватить несравненно большее количество символов, чем принятые ранее кодировки. Еще одним важным отличием Unicode от других систем кодировки является то, что он не только приписывает каждому символу уникальный код, но и определяет различные характеристики этого символа, например: тип символа (прописная буква, строчная буква, цифра, знак препинания и т. д.); атрибуты символа (отображение слева направо или справа налево, пробел, разрыв строки и т. д.); соответствующая прописная или строчная буква (для строчных и прописных букв соответственно); соответствующее числовое значение (для цифровых символов).

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

Для совместимости с предыдущими кодировками первые 256 кодов совпадают со стандартом ASCII.

При отображении символов на экране в текстовом режиме используются однобайтные кодировки и аппаратурный знакогенератор, в памяти которого хранятся начертания символов, причем вторая половина таблицы (коды 128-255) может изменяться. В память адаптера для каждого знакоместа записывается два байта (байт с кодом символа и байт с характеристиками цвета для фона и контура). Адаптер заполняет экран изображениями символов (два режима 80х25 и 40х25). Текстовый режим используется редко, в специальных случаях (режим DOS, режим терминала в ходе загрузки, режим терминала в ОС Linux). Основные недостатки этого режима ограниченный набор символов и один шрифт.

Для отображения текста на экране, работающем в графическом режиме программа должна записать в память адаптера соответствующее изображение текста. При этом вид символов может быть любым и определяется используемым шрифтом, т.е. специально разработанным для каждого символа изображением. Поскольку все действия выполняются программно, то может использоваться любая кодировка и любые шрифты. Ограничения накладываются из соображений стандартизации и совместимости. В современных ОС используются двухбайтные кодировки и большие наборы шрифтов с возможностью их расширения. Большинство программ отображения текстов используют экран в графическом режиме. При этом используются самые разнообразные шрифты и сочетание текста с другими элементами. Таким образом, когда мы смотрим на экран в каком-либо текстовом редакторе, мы видим изображение (картинку), созданную на растре.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.