Всякий текст есть последовательность символов. Символьный алфавит компьютера содержит 256 знаков. Один символ из такого алфавита несет 8 бит информации и, следовательно, в памяти ЭВМ занимает 1 байт. Все символы в алфавите пронумерованы от 1 до 255. Каждому номеру соответствует 8-разрядный двоичный код от 00000000 до 11111111. Этот код есть просто номер символа в двоичной системе счисления.
Таблица, в которой ставятся в соответствие символы, их десятичные номера и двоичные коды, называется таблицей кодировки. Для разных типов ЭВМ используют различные таблицы кодировки. Наиболее распространенной таблицей кодировки на персональных компьютерах является код ASCII.
Стремление упростить работу с различными видами текстов привело к созданию большого количества программного обеспечения, ориентированного именно на эти проблемы и называемого текстовыми редакторами (ТР) или текстовыми процессорами.
Общее назначение ТР – ввод текстов в компьютер и их редактирование, сохранение на ВЗУ (внешнем запоминающем устройстве) и печать на бумаге.
Минимальный набор, позволяющий эффективно работать с текстовыми редакторами, составляют клавиатура, дисплей, оперативная память, ВЗУ на магнитных дисках, принтер.
Клавиатура. В ТР активно задействованы все группы клавиш:
· клавиши, с помощью которых осуществляется ввод различных символов;
· функциональные,
· управляющие,
· переключения режимов,
· перемещения курсора,
· прочие клавиши.
Дисплей (монитор). При работе с ТР пользователь имеет дело с экраном, работающим в текстовом режиме. Экран поделен на строки, в каждую из которых можно поставить ограниченное количество символов. Таким образом, можно считать, что экран представляет собой сетку, каждая клеточка которой характеризуется номерами строки и столбца (позиции в строке). С другой стороны, позиция на экране представляет мозаичное поле из заданного числа строк и столбцов. Зрительный образ символа формируется набором закрашенных точек.
Оперативная память служит для хранения программы ТР и обрабатываемого текста. Представляет собой набор адресуемых ячеек (байтов), в каждом из которых можно хранить код одного символа.
ВЗУ на магнитных дисках состоят из дисководов и собственно магнитных дисков. Дисководы - устройства для считывания (записи) информации с помощью считывающих (записывающих) головок. Магнитные диски - носители информации - разделены на дорожки, каждая из которых, в свою очередь, поделена на сектора (блоки), состоящие из "клеточек" (байтов). В одну клеточку помещается один символ. Число дорожек на диске, число секторов на дорожке и число байтов в секторе определяют общий объем информации, которую можно хранить на диске. Операция по разметке диска на дорожки, сектора и байту называется форматированием и выполняется с помощью специальных программ. Место расположения файла на диске фиксируется в оглавлении диска. Поиск необходимой информации компьютер выполняет следующим образом:
· по имени файла в оглавлении диска ищется его место (до
рожка и номер первого сектора) на диске;
· считывающая головка подводится к соответствующей дорожке
и отсчитывается нужный сектор;
· содержимое сектора считывается в буферную (оперативную) память;
· при дальнейшем чтении информации из файла производится
считывание следующих секторов.
Принтер. Тексты, подготовленные с помощью ТР, могут быть распечатаны на принтере. Принтер имеет собственную память (буфер), что позволяет ему работать автономно от компьютера, когда текст (остаток текста) полностью помещается в буфер.
Аппаратные средства ТР
Рабочим полем ТР является экран дисплея, на котором отображаются все действия, выполняемые ТР. Важным элементом среды является интерфейс - это те средства, с помощью которых пользователь может общаться с ТР и управлять им. На сегодняшний день наиболее предпочтительным считается интерфейс в форме меню, из которого специальным маркером (выделенным цветом) можно выбирать те или иные команды ТР. Одновременно с меню (если оно есть) на экране высвечивается строка состояния, в которой дается информация о текущем состоянии ТР (режимы работы, позиция курсора и пр.).
Текст, обрабатываемый с помощью ТР, хранится в оперативной памяти и визуально может быть представлен в виде рулона бумаги (в некоторых ТР - разделенного на страницы), длина и ширина которого в большинстве случаев не позволяют целиком наблюдать его на экране. Таким образок, экран можно, считать своеобразным окном, через которое пользователь просматривает текст. Для перемещения этого окна по тексту используются специальные клавиши. Есть ТР, позволяющие открывать несколько таких окон «над» соответствующим количеством текстов.
Курсор - световое пятно на экране - место активного воздействия исполнителя на рабочее поле. При вводе символа с клавиатуры он занимает место курсора, который сдвигается на одну позицию вправо. Передвигая курсор, можно перемещать окно по основной памяти (тексту). Наличие курсора в рабочем поле указывает на то, что исполнитель находится в режиме ввода-редактирования текста. Координаты курсора в тексте (или на странице) - номер строки и номер столбца - отображаются в строке состояния исполнителя.
Режимы работы ТР
Ввод - редактирование текста. Состояние исполнителя, находящегося в этом режиме, отражается в строке состояний. Отметим основные компоненты состояния:
· координаты курсора,
· вставка/удаление,
· строчные/заглавные (нижний/верхний регистр),
· шрифт (рус/лат),
· разметка строки (абзац, разрешенное число символов),
· выравнивание правого края, перенос.
Форматирование. Работа в этом режиме позволяет скомпоновать текст (фрагмент текста) в требуемом виде, установив отступ с левого края, красную строку, число позиций в строке и т.д.
Обращение за подсказкой. При переходе в этот режим на экране открывается дополнительное окно, содержащее краткую справочную информацию о работе в ТР. Подсказка может содержать несколько листов текста, в этом случае указывается способ перелистывания.
Орфографическая проверка. Этот режим работы возможен лишь при наличии словаря. При проверке текста фиксируются слова, отсутствующие в словаре, что является косвенным свидетельством орфографической ошибки. Режим орфографической проверки может быть совмещен с режимом редактирования.
Обмен с ВЗУ возможен в двух направлениях: сохранение (запись, SAVE) и загрузка (считывание, LOAD) текста, который при хранении на ВЗУ называется файлом (текстовым файлом). Каждый файл характеризуется своим персональным именем. Магнитный носитель может быть структурирован на каталоги (директории) и подкаталоги. В этом случае возникает понятие пути к необходимому каталогу. Если компьютер имеет несколько ВЗУ, то они получают название устройств А:, В:, С: и т.д. Тогда при работе с файлами возникает дополнительная проблема выбора устройства.
Печать. В этом режиме осуществляется вывод текста на бумагу. С помощью ТР можно управлять принтером, определив шрифт, вид печатаемой страницы (левое и правое поля, число строк на странице), способ нумерации страниц (местонахождения номера страницы, порядок нумерации).
Система команд ТР
Систему команд текстового редактора можно условно - разделить на следующие группы команд:
· команды интерфейса – вход в меню и выход из него, перемещение маркера по меню, выбор нужного пункта меню;
· команды изменения состояния ТР, позволяющие в режиме редактирования выбрать шрифт, нижний/верхний регистр, режим
вставки/замены и т.д.;
· команды перемещения по тексту, которые разделяются на две группы: пошаговое перемещение (стрелки вправо, влево, вверх, вниз); быстрое перемещение по тексту (переход в начало/конец строки, начало/конец текста, листание страниц, прыжок на метку и т.д.);
· команды посимвольного редактирования, позволяющие внести исправления в текст (вставить/удалить/заменить символ, заменить строчную букву на заглавную и т.д.);
· команды работы со строками, позволяющие манипулировать со строками (удалить, вставить пустую, рассечь на две части, "склеить" две последовательные строки);
· поиск по образцу служит для отыскания в тексте мест, содержащих указанный набор символов (букву, слово, фразу и т.д.);
· копирование включает в себя выделение копируемого фрагмента текста и помещение его в буфер (в некоторых ТР эти процессы идут параллельно), воспроизведение содержимого буфера в требуемом месте текста;
· форматирование позволяет придать тексту требуемый вид: установить число символов в строке, выровнять правый край, выделить поля и красную строку и т.д.
В большинстве ТР команды исполнителя реализуются двумя способами:
- с помощью функциональных, управляющих и прочих клавиш специального назначения;
- выбором соответствующего пункта в меню.
Данные ТР
Текстовый редактор работает с символьной информацией, в которой можно выделить следующие виды структур:
· символы;
· слова;
· строки символов;
· фрагменты текста (блоки);
· файлы.
В системе команд имеются команды работы с каждой из этих структур как с единым целым.
Символ - минимальный объект, подлежащий обработке ТР. С символами оперируют в основном при вводе текстов и при их посимвольном редактировании.
Слово - набор символов, ограниченный слева и справа пробелами или знаками препинания; используется в командах быстрого перемещения по тексту, удаления фрагментов текста.
Строка символов - данные, занимающие в тексте одну строку, размеры которой могут быть четко очерчены форматированием. Исполнитель ТР имеет ряд команд, оперирующих строками (вставить/удалить, соединить/разорвать, перейти в начало/конец и т.д.).
Фрагмент текста - набор последовательных строк, с которым можно работать как с единым целым (удалять, перемещать, копировать и т.д.).
Понятие файла связано с хранением, считыванием и записью информации на диск. В отличие от ранее рассмотренных структур данных, файлы являются поименованными данными, т.е. каждый из них имеет свое персональное имя.
Контрольные вопросы
- Сферы применения текстовых редакторов.
- На какие разделы (листы) делится память ТР?
- На какие основные группы клавиш делится клавиатура?
- Из каких основных частей состоит ВЗУ?
- Принципы работы принтера.
- Основные принципы организации и функции файловой системы.
Практические задания
- Определить объем памяти в байтах, необходимый для хранения заданной фразы.
- Определить, сколько страниц займет текст при печати на бумаге, если задан его объем в байтах и определено количество строк на странице, и число символов в строке.
- Определить, поместится ли на дискете указанный текст (например, книга), если его ввести в память компьютера.
- Что такое курсор? Его роль в работе текстового редактора.
- Будут ли одновременно видны на экране символы, стоящие вk-ой позиции Х-ой строки и в n-ой позиции Y-ой строки (например: к=10, Х=5, n=5, Y=39)?
- Сформулировать алгоритм перемещения первого абзаца заданного текста в конец текста с помощью системы команд ТР.
- Сформулировать алгоритм сборки текста средствами ТР из фрагментов, хранящихся в нескольких файлах.
- Сформулировать алгоритм, с помощью которого можно сосчитать, сколько раз входит некоторая буква (например, «о») в заданный текст.
- Сформулировать алгоритм подсчета числа слов в заданном тексте.
- Сформулировать алгоритм подсчета числа предложений в заданном тексте.
- Как быстро узнать, сколько строк в тексте, который обрабатывается с помощью ТР?