Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
САПР ЭО-лекции.doc
Скачиваний:
7
Добавлен:
22.04.2019
Размер:
1.82 Mб
Скачать

Базовое ло

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

К языкам программирования предъявляют требования:

а) удобства использования;

б) универсальности;

в) эффективности объектных программ (программ, полученных после трансляции на машинный язык).

Удобство использования выражается в затратах времени программиста на освоения языка и главным образом на написание программ на этом языке. Универсальность определяется возможностями языка для описания разнообразных алгоритмов, а эффективность оценивается затратами машинного времени и памяти на исполнение программ.

Языки программирования делятся на кодовые (машинные), языки низкого и высокого уровня.

Машинные языки. Алфавит – только цифры (двоичные, восьмиричные, шестнадцатиричные), с помощью которых кодируются команды машины и данные, над которыми эти команды выполняются.

Языки программирования низкого уровня (машинно-ориентированные языки). В этих языках каждая машинная команда записывается в виде мнемонического кода операции и операнда. Например: операция сложения может иметь мнемокод СЛЖ и т.д.. Мнемоническое обозначение операнда – произвольная последовательность символов, выражающая, либо наименование, либо значение константы, участвующей в операции.

Языки программирования высокого уровня. Отличие – машинная независимость. Программы написанные на этих языках могут выполнятся на любых ЭВМ, снабженные соответствующими языковыми процессорами.

С позиции универсальности и эффективности объектных программ наилучшими свойствами обладают машинно-ориентированные языки: языки ассемблера или автокода. Однако они не удобны для человека, т.к. их применение снижает производительность труда программистов. Они применяются для разработки лишь тех модулей по САПР, которые требуют для своего исполнения больших вычислительных ресурсов, существенно влияющих на общие затраты машинного времени и памяти. В остальных случаях используют один из языков высокого уровня, наиболее подходящий для решения конкретной задачи. Например для написания программ по решению задач численного анализа высоко эффективным является язык Fortran.

Языковые процессоры

Для того, что бы выполнение обобщенного алгоритма проектирования происходило в соответствии с требованиями проектировщика, ЭВМ должна «понимать» язык проблемно - ориентированных заданий и правильно формировать ответные сообщения. Это достигается с помощью специализированных языковых процессоров, выполняющих три основные функции:

а) распознавание вводимого текста и выявление отдельных составляющих его конструкции ( символов, слов, предложений);

б) распознавание смысловой информации, которую несет в себе текст;

в) интерпретация смыслового знания введенного текста и выдача проектировщику ответного сообщения.

Языковые процессоры бывают:

а) интерпретирующего типа;

б) компилирующего типа.

Достоинства интерпретатора – получение требуемых результатов на каждом шаге алгоритма проектирования.

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

Достоинства компиляторов: однократный анализ текста и создание рабочей программы, которую можно многократно использовать

Недостатки: необходимость значительного времени и памяти ЭВМ для сбора и хранения рабочей программы проектирования.

Промежуточное положение между компиляторами и интерпретаторами занимают языковые процессоры: компиляторы интерпретирующего типа и шаговые компиляторы

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]