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

10. Текстовые данные ------------------------------------------------------------------

"Информатика (в 2 частях)", Матвеева Н.В., Челак Е.Н., Конопатова Н.К., Панкратова Л.П., Нурова Н.А.

Объяснение темы В оглавлении: 10. Текстовые данные ------------------------------------------------------------------

Кратко о теме

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

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

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

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

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

Символ — отдельный элемент текста: буква, цифра, знак препинания, пробел или другой знак. Например, в записи «Привет!» есть буквы и восклицательный знак, и каждый из них считается отдельным символом. Пробел между словами тоже входит в последовательность. Понятие символа необходимо, чтобы правильно считать текст и объяснять, как компьютер его сохраняет.

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

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

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

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

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

Размер алфавита влияет на число возможных кодов. Один бит позволяет выбрать один из двух вариантов, два бита — один из четырёх, а n бит — один из 2ⁿ вариантов. Поэтому для алфавита из 32 символов нужно как минимум 5 бит: 2⁵ = 32. Если код должен иметь целое фиксированное число бит, выбирают наименьшее n, при котором 2ⁿ не меньше количества символов.

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

Количество символов и объём текста связаны, но это не одно и то же. Для оценки объёма нужно знать, сколько бит отводится на каждый символ и как устроено кодирование. Например, при одинаковом количестве символов файл с большим числом бит на знак может занимать больше места. Поэтому нельзя определить точный размер текстового файла, зная только длину текста.

Понятия и представление текстовых данных

Понятие или характеристикаЧто означаетПример или пояснение
Текстовые данныеИнформация в виде упорядоченной последовательности символовСообщение, заметка или текстовый документ
СимволОдин отдельный знак в текстеБуква, цифра, пробел или запятая
АлфавитКонечный набор символов, применяемых для записиНабор букв, цифр и знаков выбранного языка
Кодирование символовСопоставление символам кодов для хранения и обработкиКомпьютер записывает коды в двоичном виде
Зависимость объёма от кодировкиРазмер текста зависит от числа символов и способа их кодированияРазные затраты бит на знак могут давать разный объём

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

Разбор задач

Задача 1. Посчитайте количество символов в строке «Мир, дом!», учитывая пробелы и знаки препинания. Считать следует все отдельные элементы, включая запятую, пробел и восклицательный знак. Удобно двигаться по строке слева направо и отмечать каждый знак один раз. Тогда ничто не потеряется при подсчёте.

  1. Запишем символы строки по порядку: М, и, р, запятая, пробел, д, о, м, восклицательный знак. Получилось девять отдельных элементов. Каждая буква и каждый знак дают по одному символу.
  2. Проверим, что пробел учтён между запятой и буквой «д». Запятая и восклицательный знак тоже вошли в подсчёт. Повторно ничего не считаем.

Ответ: 9 символов. При подсчёте строку рассматривают как последовательность всех знаков, а не только букв.

Задача 2. В алфавите 32 символа; требуется найти минимальное число бит для кодирования одного символа фиксированной длиной. Не нужно приравнивать количество символов к количеству бит. Вместо этого проверим, сколько разных вариантов можно представить каждым числом разрядов. Выберем наименьшее число разрядов, вариантов в котором хватит для всего алфавита.

  1. При n битах существует 2ⁿ различных комбинаций. Сравним соседние степени двойки: 2⁴ = 16, а 2⁵ = 32. Четырёх разрядов недостаточно, потому что ими нельзя различить все 32 символа.
  2. Пять разрядов дают ровно 32 комбинации. Значит, все символы можно закодировать, и меньшее число бит не подойдёт. Это и есть минимальная длина кода для заданного алфавита.

Ответ: 5 бит на символ. Проверка через степени двойки показывает, что 2⁵ не меньше размера алфавита, а 2⁴ уже меньше него.

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

  1. Найдём общий объём в битах: 120 × 8 = 960 бит. Здесь каждый из 120 символов занимает по 8 бит. Единицы пока оставляем в битах.
  2. Переведём биты в байты: 960 ÷ 8 = 120 байт. Деление на 8 нужно, потому что байт состоит из восьми бит. Условие не сообщает о дополнительных данных файла, поэтому вычисляем объём только по заданному кодированию символов.

Ответ: 120 байт. Полезно проверить вычисление в обратном порядке: 120 байт — это 960 бит, что соответствует 120 символам по 8 бит.

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

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

Вторая ошибка — считать, что число символов алфавита равно числу бит на символ. Путают количество объектов, которые нужно различать, с количеством двоичных разрядов, задающих комбинации. Проверьте результат через степени двойки: должно выполняться 2ⁿ ≥ N, где N — размер алфавита. При этом убедитесь, что число n выбрано минимальным.

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

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

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

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

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

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

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

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

Считается ли пробел символом?

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

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

Алфавит — это набор символов, которыми можно записывать текст. Текст — конкретная последовательность этих символов, расположенных в определённом порядке.

Зачем каждому символу назначают код?

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

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

Нужно найти наименьшее целое число n, для которого 2ⁿ не меньше числа символов алфавита. Например, для алфавита из 32 символов достаточно 5 бит, потому что 2⁵ = 32.

Почему текст иногда отображается нечитаемыми знаками?

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

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

10. Текстовые данные ------------------------------------------------------------------

Учебник

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