Cтраница 3
Напишите программу, которая вводит символ с клавиатуры и проверяет этот символ каждой из функций библиотеки обработки символов. Программа должна печатать значение, возвращаемое каждой функцией. [31]
![]() |
Начало построения автомата для поиска подстроки hello. [32] |
Алгоритм Кнута-Морриса - Пратта основан на принципе конечного автомата, однако он использует более простой метод обработки неподходящих символов. В этом алгоритме состояния помечаются символами, совпадение с которыми должно в данный момент произойти. Из каждого состояния имеется два перехода: один соответствует успешному сравнению, другой - несовпадению. [33]
Напишите программу, которая вводит символы с клавиатуры и проверяет их с помощью каждой из функций библиотеки обработки символов. Программа должна выводить значения, возвращенные каждой функцией. [34]
Операция R / CONCAT осуществляет запоминание состояния активного вводного файла в стандартный магазин ввода-вывода, подключение на вход - программы регистровой памяти, а по окончании обработки символов последней возврат к обработке вводного файла, восстановив его состояние из магазина ввода-вывода. [35]
Поскольку язык Ратфор - всего лишь замаскированный язык Фортран, то в нем отсутствует ряд ценных качеств, появившихся в языке Паскаль, в котором средства типизации данных лучше подходят для обработки символов, а сильная типизация вместе с имеющимися средствами структуризации данных облегчает работу программиста. [36]
Программа ТРАНСЛЯТОР С ЯЗЫКА ФОРТРАН IV, версия которого соответствует стандарту США, дополнительно реализует: ввод-вывод с прямым доступом; арифметические операции смешанного типа; точное определение места ошибок и установление соответствия имени и номера оператора в основной программе; возможность обработки символов с использованием логических переменных длиной 1 байт. [37]
Транслятор с языка ФОРТРАН IV выдает программы, написанные на проблемно-ориентированном языке ФОРТРАН IV, который обеспечивает ввод-вывод с прямым доступом, арифметические операции смешанного типа, точное определение места ошибок и установление соответствия имени и номера оператора в основной программе, обработку символов с использованием логических переменных длиной в один байт. [38]
В главе 8, Символы и строки, речь идет об основных принципах обработки нечисловых данных. В главу включен подробный обзор функций обработки символов и строк, имеющихся в библиотеках С. Методики, обсуждаемые здесь, широко используются при создании текстовых редакторов, типографских программ макетирования и приложений обработки текстов. Глава завершается интересным набором из 33 упражнений, исследующих обработку текстов. [39]
Лисп, совместимую с Лиспом, который был реализован процессором Explorer. На основе CLM возможно построение небольших систем обработки символов, которые могут быть использованы в качестве встроенных экспертных систем, таких, например, как интеллектуальные приборы, принимающие участие при интерпретации принимаемых данных и диагностике своих собственных неисправностей. [40]
O Hare and Jennings, 1996 ] составляют исследования взаимодействия и кооперации небольшого числа интеллектуальных агентов, например, классических интеллектуальных систем, включающих базы знаний и решатели. Главной проблемой в РИМ является разработка интеллектуальных групп и организаций, способных решать задачи путем рассуждений, связанных с обработкой символов. Иными словами, здесь групповое интеллектуальное поведение образуется на основе индивидуальных интеллектуальных поведений. Это означает согласование целей, интересов и стратегий различных агентов, координацию их действий, разрешение конфликтов путем переговоров; теоретическую базу здесь составляют результаты, полученные в психологии малых групп и социологии организаций. [41]
![]() |
Структурная схема устройства связи оператора с машиной. [42] |
Для ввода алфавитно-цифровой информации применяют клавишные устройства, за клавиатурой которых работает оператор. При каждом нажатии клавиши в машину посылается код символа, указанный на клавише. Ввод и обработка символов выполняется так же, как и при вводе с носителя информации, в темпе, определяемом скоростью набора данных на клавиатуре устройств ввода. Устройства для непосредственного ввода обычно устанавливают на пульте управления ЭЦВМ и используют для ввода коротких последовательностей символов, назначением1 которых является управление работой машины. [43]
Буферизация также является важным вопросом как для блочных, так и для символьных устройств по самым разным причинам. Чтобы проиллюстрировать одну из причин, рассмотрим процесс, который хочет прочитать данные с модема. Одна из возможных стратегий обработки поступающих символов состоит в обращении процесса пользователя к системному вызову read и блокировке в ожидании отдельного символа. Каждый прибывающий символ вызывает прерывание. Процедура обработки прерываний передает символ пользовательскому процессу и разблокирует его. Поместив куда-либо полученный символ, процесс читает следующий символ, опять блокируясь. [44]
Все элементы массива PAT заполняются с помощью обращений к ADDSTR. Эта же программа была использована в программе TRANSLIT и предназначена для проверки превышения индекса записи, хранения элементов и обновления индекса хранения. Процедура ESC была также описана вместе с TRANSLIT и предназначена для обработки символа расширения кода, если таковой присутствует. [45]