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

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
ЛИНГВИСТИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
Лингвистическое обеспечение САПР представляет собой совокупность языков, необходимых для создания и работы системы автоматизированного проектирования.
В процессе своей работы (в любой прикладной области) пользователю необходимо общаться с компьютерами и подобными им устройствами передавать им данные, команды, задания и описание работы, которую они должны выполнить.
Для этой цели разработаны, продолжают развиваться и создаваться специальные языки, которые называют искусственными в отличие от естественных языков общения людей.
Искусственные языки должны быть, с одной стороны, удобными и понятными для человека, а с другой должны восприниматься электронными устройствами. Совмещение этих требований в одном языке оказалось трудной задачей, поскольку:
Поэтому появились средства для преобразования текстов с языка, понятного человеку, на язык устройства. Такие средства назвали трансляторами. Транслятор может быть интерпретирующего или компилирующего типа. В первом случае его называют интерпретатором входного (или исходного) языка, а во втором компилятором (см. раздел «Программное обеспечение»).
На вход транслятора подаётся текст, написанный на входном языке языке, понятном человеку, а результатом работы транслятора является текст на языке, понятном устройству.
Для построения транслятора необходимо однозначное и точное знание входного и выходного языков. Такое знание предполагает наличие правил построения допустимых конструкций (выражений) языка. Множество таких правил называют синтаксисом языка. Кроме того, знание языка включает описание назначения и смысла каждой конструкции языка. Такое описание называют семантикой языка.
При разработке языков входной текст рассматривается как последовательность символов, построенная по определенным правилам. Математические модели, использующие представление текстов в виде цепочек символов, называют формальными языками и формальными грамматиками.
Работа транслятора состоит из нескольких стадий, которые могут быть представлены в виде схемы (рис. 5.1).
Рис. 5.1. Схема работы транслятора |
Первая стадия работы транслятора называется лексическим анализом, а программа, её реализующая, лексическим анализатором (ЛА). На вход ЛА подаётся последовательность символов входного языка. ЛА выделяет в этой последовательности простейшие конструкции языка, которые называют лексическими единицами (лексемами). Примерами лексических единиц являются идентификаторы, числа, символы операций, служебные слова и т.д. ЛА преобразует исходный текст, заменяя лексические единицы их внутренним представлением лексемами.
Вторую стадию работы транслятора называют синтаксическим анализом, а соответствующую программу синтаксическим анализатором (СА). На вход СА подаётся последовательность лексем, которая преобразуется в промежуточный код, представляющий собой последовательность символов действия или атомов. Каждый атом включает описание операции, которую нужно выполнить, с указанием используемых операндов.
На третьей стадии работы транслятора осуществляется построение выходного текста, или синтез исходного кода программы. Программа, реализующая эту стадию, называется генератором выходного текста (Г). Генератор каждому символу действия, поступающему на его вход, ставит в соответствие одну или несколько команд выходного языка.
Рассмотренная схема транслятора является упрощённой, поскольку реальные трансляторы, как правило, включают стадии оптимизации.
Лингвистическое обеспечение образуется следующими языками:
Языки программирования необходимы для создания программного обеспечения при разработке САПР. К таким языкам относятся, например, ForTran, C, Pascal, AutoLISP, язык программирования СУБД FoxPro и многие другие.
Языки управления служат для «ручного» управления компьютерами и периферийными устройствами.
Языки проектирования ориентированы на пользователей-проектировщиков и предназначены для эксплуатации САПР.
Существует похожий, но несколько иной подход к систематизации языков САПР.
Лингвистическое обеспечение хорошо развитых САПР можно разделить на две относительно обособленные части базовую и управляющую.
Базовое лингвистическое обеспечение является языковой основой программного обеспечения САПР и состоит в основном из действующих языков программирования, с помощью которых реализуются вычислительные и моделирующие шаги проектирования, а также обеспечивается решение сервисных задач.
Управляющее лингвистическое обеспечение состоит из специализированных проблемно-ориентированных языков, которые описывают общий алгоритм проектирования в терминах проектных операций, процедур и задач. В этих языках используются словарь, синтаксис и семантика, тесно связанные с конкретной предметной областью проектирования.
Очевидно, что в этой классификации не нашлось места языкам управления, и немного различается терминология. В остальном же представленные два подхода полностью аналогичны.