На Горох
Информатика

§ 5. Способы представления текстовой информации

"Информатика (в 2 частях)", Могилев А.В., Могилева В.Н., Цветкова М.С.

Объяснение темы В оглавлении: § 5. Способы представления текстовой информации

Кратко о теме

Текст состоит из символов, а компьютер работает с сигналами, которые удобно различать как 0 и 1. Поэтому каждому символу алфавита назначают двоичный код, а из кодов символов составляют код всего текста. Разобравшись в мощности алфавита, длине кода и кодировке, можно определить, сколько бит занимает сообщение, понять принцип хранения текста и объяснить, почему при неверной кодировке появляются непонятные знаки.

Объяснение темы

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

Определения и обозначения

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

Мощность алфавита — количество символов в алфавите. Каждый символ должен иметь собственный код, чтобы компьютер мог отличать его от остальных. Мощность обозначают буквой N, если требуется подсчитать число возможных символов.

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

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

Как это устроено

Человек воспринимает текст как слова и предложения, а компьютер должен хранить его в виде электрических состояний. Такие состояния удобно обозначать двумя значениями: 0 и 1. Поэтому символы переводят в двоичные последовательности, которые устройство может записать, передать и обработать.

Сначала выбирают алфавит и ставят каждому его символу в соответствие код. Например, одному знаку может соответствовать 010, а другому — 111. Код всего текста получают последовательным соединением кодов всех символов, включая пробелы и знаки препинания.

Количество возможных кодов зависит от числа битов. Если код имеет длину k бит, на каждой позиции можно выбрать 0 или 1, поэтому всего получается 2ᵏ последовательностей. Для алфавита из N символов нужно выбрать такую длину, чтобы 2ᵏ ≥ N, иначе некоторым символам не хватит разных кодов.

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

Объём текста находят по числу символов и длине их кодов. Если в сообщении L символов и каждый занимает k бит, объём равен L · k бит; затем биты можно перевести в байты, разделив на 8. При кодах разной длины объём считают сложением длин кодов всех отдельных символов.

Способы представления текста и параметры кодирования

Способ или параметрКак представляется текстЧто определяетПример или замечание
Естественный языкСлова и знаки привычного письменного языкаСмысл текста для читателяРусский язык
Формальный языкСимволы и правила заданного языкаОднозначность записи и обработкиЯзык программирования
Двоичное кодированиеКаждому символу сопоставляется двоичная последовательностьПредставление текста в памяти компьютераКод символа состоит из битов
Мощность алфавитаКоличество символов, которые требуется кодироватьМинимальную длину кода фиксированной длиныДля N символов выбирают k так, чтобы 2ᵏ ≥ N

Сначала определите, о каком способе или параметре идёт речь, а затем смотрите на его назначение. Строки про языки описывают, как человек или система записывает смысл и правила, а строка про двоичное кодирование — как текст хранится в компьютере. Последняя строка помогает выбрать длину кода по мощности алфавита.

Разбор задач

Задача 1

В алфавите 8 символов. Нужно найти длину кода фиксированной длины, достаточную для одного символа. Ищем не любое подходящее число битов, а наименьшее возможное.

  1. Проверим степени двойки: 2² = 4, а этого недостаточно для 8 символов.
  2. При k = 3 получаем 2³ = 8 кодов.
  3. Восьми разных кодов хватает ровно для восьми символов.

Ответ: достаточно 3 бит на один символ. Каждый символ можно сопоставить с одной из восьми последовательностей длиной 3.

Задача 2

Алфавит содержит 32 символа, а длина кода равна 5 битам. Нужно узнать число доступных кодов и сравнить его с мощностью алфавита. Сравнение показывает, хватает ли всех комбинаций для кодирования.

  1. Для пяти битов число последовательностей равно 2⁵.
  2. Вычисляем: 2⁵ = 32.
  3. Полученное число сравниваем с 32 символами: 32 ≥ 32.

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

Задача 3

Текст содержит 120 символов, включая пробелы, а каждый символ кодируется 8 битами. Сначала найдём общий объём в битах, затем переведём его в байты. Пробелы уже входят в указанные 120 символов, поэтому отдельно добавлять их не нужно.

  1. Умножаем число символов на длину кода: 120 · 8 = 960 бит.
  2. В одном байте 8 бит, поэтому делим 960 на 8.
  3. Получаем 960 : 8 = 120 байт.

Ответ: объём текста равен 960 бит, или 120 байт. Если бы в условии не были учтены пробелы, их количество пришлось бы прибавить к числу символов перед вычислением.

Типичные ошибки

Путают мощность алфавита с длиной кода. Мощность показывает число символов, а длина кода — количество бит для одного символа. Проверьте себя вопросами: «Сколько знаков?» и «Сколько бит на знак?».

Выбирают слишком короткий код. Ошибка возникает, если взять k, для которого 2ᵏ меньше числа символов. Всегда вычисляйте количество доступных кодов и сравнивайте его с мощностью алфавита.

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

Считают код символа неизменным. Его двоичное представление зависит от выбранной кодировки. Уточните, какая кодировка использована при записи и чтении, если отображение текста вызывает сомнения.

Связь с другими темами

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

Тема связана с умением считать в двоичной системе и переводить биты в байты. Эти навыки нужны при вычислении числа кодов и объёма текстового сообщения.

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

Что запомнить

  • Текст для компьютера представляется последовательностью кодов символов.
  • Алфавит — набор символов, используемых при записи текста.
  • Мощность алфавита равна количеству его символов.
  • k бит позволяют составить 2ᵏ различных двоичных кодов.
  • Для кодирования N символов кодом фиксированной длины нужно выбрать k так, чтобы 2ᵏ ≥ N.
  • Объём текста зависит от количества символов и длины их кодов.
  • Для правильного чтения текста должна быть верно определена использованная кодировка.

Частые вопросы по теме

Почему компьютер представляет текст нулями и единицами?

Электронным устройствам проще надёжно различать два состояния: есть сигнал или нет сигнала. Им соответствуют 1 и 0, поэтому любые данные, в том числе текст, переводятся в двоичный вид.

Чем алфавит отличается от кодировки?

Алфавит — это набор символов, например букв, цифр и знаков. Кодировка задаёт правило, по которому каждому символу этого набора назначается определённый код.

Как определить, сколько бит нужно для кодирования символа?

Нужно найти наименьшее целое k, для которого 2ᵏ не меньше количества символов в алфавите. Число k и будет длиной кода фиксированной длины для одного символа.

Почему в объём текста включают пробелы и знаки препинания?

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

Почему текст может отображаться неправильно при несовпадении кодировок?

При чтении программа использует правило, по которому переводит коды в символы. Если это правило отличается от использованного при записи, один и тот же набор битов превращается в другие знаки.

Спросить по теме параграфа

§ 5. Способы представления текстовой информации

Учебник

Оглавление →
Предмет
Информатика
Учебник
"Информатика (в 2 частях)", Могилев А.В., Могилева В.Н., Цветкова М.С.