Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры_ТП (с рамками)_2013.docx
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
253.1 Кб
Скачать

27. Представление в машине символьной информации. Кодировки ascii, mbcs, ansi, Unicode. Строки ascii-z, Pascal, bstr.

При обработке текстовой информации один байт может содержать код некоторого символа - буквы, цифры, знака пунктуации, знака действия и т.д. Каждому символу соответствует свой код в виде целого числа. Один байт как набор восьми битов позволяет закодировать 256 символов, что вполне достаточно для работы сразу с двумя обычными языками, например английским и русским. При этом все коды собираются в специальные таблицы, называемые кодировочными. С их помощью производится преобразование кода символа в его видимое представление на экране монитора. В результате любой текст в памяти компьютера представляется как последовательность байтов с кодами символов. Например, слово hello! может быть закодировано следующим образом:

символ

h

e

l

l

o

!

код

01001000

01100101

01101100

01101100

01101111

00100001

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

Номер нажатой клавиши никак не связан с формой символа, нанесенного на клавише. Опознание символа и присвоение ему внутреннего кода ЭВМ производятся специальной программой по специальным таблицам: ДКОИ, КОИ-7, ASCII.

Описание формы каждого символа хранится в специальной памяти дисплея - знакогенераторе. Высвечивание символа на экране дисплея IBМ PC осуществляется с помощью точек, образующих символьную матрицу.

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

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

MBCS – Multi-Byte Character Set, один символ кодируется одним, двумя или тремя байтами. Используется для кодирования алфавитов японского и других дальневосточных языков.

Unicode – стандартизованный вариант международной кодировки, в котором длина кода равна 2 байтам. В этой кодировке каждому языку выделен свой диапазон. Реализована многоязыковость, что было крайне необходимо при развитии Internet технологий.

Строки ASCII-Z, Pascal, BSTR. Для языка Pascal определен тип строка. Такой тип имеет максимально длину в 256 байт, однако ее можно ограничивать. Нумерация с 1, а в 0 байте записана текущая длина строки. Для С++ тип строка не определен вовсе. Присутствует только массив и тип char(символ). Соответственно, тип строка можно реализовать вручную. В языках Object Pascal (среда Deplhi) и C++(среда Builder) определен схожий тип данных – AnsiString. Такой тип реализован классом. Для класса AnsiString определенны базовые операции, и перегружены ряд операций, что делает проще и удобнее его использование.

Строка BSTR – это тип “Basic STRing”, определенный в языке Basic. Данный язык активно продвигается фирмой Microsoft, и такой тип строки используется в технологии DCOM, в качестве объявления типа входных параметров.