
- •1. Загальні питання створення сапр
- •1.1. Загальні відомості про проектування
- •1.2. Поняття сапр
- •Передумова автоматизованого проектування
- •1.3. Переваги сапр
- •2.Класифікація і позначення
- •2.1. Структура сапр
- •2.2. Різновиди сапр
- •2.3. Функції, характеристики і приклади cae / cad / cam – систем
- •2.4. Поняття про cals-технології
- •2.5. Комплексні автоматизовані системи
- •3.1. Проектні процедури
- •3.2. Еврістичні і систематичні рішення
- •3.3. Види проектних задач
- •3.4. Ідеологія сапр
- •3.5. Декомпозиція проектних задач і системний підхід
- •3.6. Концепція і методологія автоматизованого проектування
- •4. Структура сапр
- •4.1. Л інгвистичне забезпечення сапр
- •Загальна характеристика
- •Управляюче лінгвістичне забезпечення
- •Базове лінгвістичне забезпечення
- •4.2. Програмне забезпечення сапр
- •4.3. Склад і функціональне призначення програмного забезпечення сапр
- •4.4. Основні принципи проектування пз сапр
- •4.5. Стадії розробки пз
- •4.6. Загальна характеристика методів проектування програмного забезпечення сапр
- •Методи проектування програмних систем
- •Методи програмування пз сапр
- •Модульне і структурне програмування. Програмування в стандартизованому стилі.
- •4.7. Документування програмного забезпечення сапр
- •Види програмних документів
- •Склад програмного документа
- •Зміст основних документів
- •4.8. Нисхідне і висхідне проектування
- •5. Математичне забезпечення автоматизованого проектування
- •Класифікація математичних моделей
- •6. Інформаційно- пошукові системи сапр
- •7. Технічні засоби сапр
- •8. Програмне забезпечення машинної графіки
- •Программное обеспечение сапр
- •Требования, которым должно удовлетворять по сапр
- •Прикладное по
- •По, созданное пользователем (приложение)
- •Средства двумерного черчения
- •3D моделирование
- •Каркасные модели
- •Поверхностное моделирование
- •Твердотельное моделирование (тм).
- •Функції пакета програм машинної графіки
- •Каркасне та об’ємне моделювання
- •Сучасні графічні пакети для інженерів машинобудівельників
- •Автоматизована розробка виробничих процесів
- •Автоматизовані системи розробки виробничих процесів пошукового типу
- •Генеруючі автоматизовані системи розробки виробничих процесів
- •Переваги автоматизованої розробки виробничих процесів
- •Експертні системи
- •Система управління виробничою інформацією pdm – системи.
Базове лінгвістичне забезпечення
Базове лінгвістичне забезпечення САПР, будучи мовної основою програмного забезпечення, містить ієрархію мов програмування, кожен рівень якої дозволяє з різною ефективністю реалізовувати автоматично виконувані операції узагальненого алгоритму проектування. На ефективність реалізації проектних операцій істотний вплив роблять властивості вибраної мови програмування: вдалий вибір мови дозволяє швидко створювати якісний програмний продукт. При цьому найважливішими характеристиками якості окремої програми і програмного комплексу в цілому є їх надійність, ефективно транслюються в досить компактні і швидкодіючі машинні програми, модифікованість і мобільність.
Залежно від вимог, накладених на програмний продукт, його вихідний опис може проводитися на мовах програмування кодового, низького й високого рівня.
Мовами програмування кодового рівня (або машинними мовами) називаються мови системи команд ЕОМ і внутрімашинного подання інформації. Алфавіт таких мов включає тільки цифри (двійкові, вісімкові або шістнадцяткові), за допомогою яких кодуються команди машини і дані, з яких ці команди виконуються. Кожна ЕОМ має індивідуальну, властиву тільки їй систему команд, але певні закономірності властиві всім обчислювальним системам.
Залежно від архітектури ЕОМ синтаксис команди, зазвичай званий форматом команди, може змінюватися в широких межах. Команди можуть мати фіксовану довжину (наприклад, одне машинне слово) або змінну довжину (два, три і більше слів). Остання визначається способом адресації до об'єкту дії команди - операнд. Машинним словом називається зазвичай послідовність з восьми двійкових цифр. За форматом систему команд можна розділити на дві категорії: безадресні команди, тобто команди, що не мають посилання на дані, і адресні команди. У першому випадку команда містить тільки код операції, вказує дію, яка повинна бути виконана (зупинка, повернення, скидання). Команди цього формату зазвичай утворюють одне машинне слово. У другому випадку команда містить код операції і/або операнд, або посилання на операнд у вигляді адреси машинного слова, в якому розташовується операнд. Прикладами є команди посилання в регістр, складання, множення і т. п. Залежно від прийнятих способів адресації адресні команди можуть утворювати два, три і більше машинних слова.
Система команд сучасних ЕОМ містить кілька сотень елементів, семантика кожного з яких визначається функціональним призначенням елементів: переміщення даних, перетворення даних, управління програмою, введення-виведення, спеціальні.
Команди переміщення даних організують обмін інформацією між арифметико-логічним пристроєм (точніше акумулятором) і оперативною пам'яттю. Команди перетворення даних використовуються для виконання арифметичних і логічних дій. Дані, над якими ці дії відбуваються, частіше за все знаходяться в акумуляторі і регістрі. Результат дії зазвичай залишається в акумуляторі. Команди управління змінюють вміст регістра адреси наступної виконуваної команди. Команди управління можуть бути умовними і безумовними. Умовна команда супроводжується зазначенням стану, яке має бути попередньо перевірене: позитивне, значення результату команди, переповнення або відсутність його і т. д. Безумовна команда управління змінює вміст регістру адреси без перевірки будь-яких умов. Команди введення - виведення організують обмін інформацією з зовнішніми пристроями ЕОМ: накопичувачами на магнітних стрічках, дисках. Спеціальні команди дозволяють виконувати особливі дії, такі, наприклад, як дозвіл переривання виконання програми, заборона переривання і т. п.
Детальне кодування дій і об'єктів цих дій в термінах кодів операцій, акумулятора, регістрів, машинних слів і т. п. дозволяє отримувати компактні і швидкодіючі машинні програми, що повністю використовують можливості сучасних ЕОМ. Крім того, програми на машинній мові не потребують трансляції; після введення в ЕОМ їх можна відразу ж виконувати. Однак машинні мови використовуються дуже рідко: для програмного керування ЕОМ та устаткування, для яких не створені або не реалізовані мови більш високого рівня, а також для написання особливо реактивних і незначних за обсягом програм. Це обумовлено високою трудомісткістю кодування. Цифрові коди важко сприймаються людиною, тому велика ймовірність вказівки невірного коду, тобто надійність програм, складених на машинних мовах низька. Крім того, програми машинної мови немобільні: вони не можуть виконуватися на ЕОМ, система команд і кодування інформації яких не містять засобів цієї мови.
Мовами програмування низького рівня (або машинно-орієнтованими мовами) називаються мови символічного кодування машинних і службових команд і даних. У цих мовах кожна машинна команда записується у вигляді мнемонічного позначення коду операції та операнда. Кожній операції машинної мови ставиться у взаємно однозначну відповідність виразне, як правило, скорочене найменування, зване мнемокод. Наприклад, операція складання може мати мнемокод СЛД. Мнемонічне позначення операнда представляє собою довільну послідовність символів, що виражає або найменування змінної, або значення константи, що бере участь в операції. Таке символічне зображення операцій та операндів дозволяє полегшити їх запам'ятовування, а значить і використання. Сервісні команди машинно-орієнтованих мов призначені для спрощення програмування та налагодження програмних комплексів: команди управління трансляцією, визначення адрес і ідентифікаторів, резервування пам'яті та визначення констант, управління друком тексту програми і т. д.
Оскільки система команд ЕОМ є підмножиною відповідної машинно-орієнтованої мови, остання дозволяє, подібно машинним мов, створювати компактні і швидкодіючі програми, які повністю використовують можливості ЕОМ. Виразність символічного представлення команд і даних сприяє підвищенню надійності створюваних програм, зручності їх запису, читання та зміни. У той же час ці програми немобільні, тому на машинно-орієнтованих мовах в основному кодують системні компоненти програмного забезпечення САПР, до яких пред'являються високі вимоги по швидкодії і споживаній пам'яті ЕОМ.
Мовами програмування високого рівня (або процедурно-орієнтованими мовами) називаються мови задання алгоритмів вирішення певного класу задач в термінах і поняттях, характерних і найбільш ефективних для цього класу. Процедурно-орієнтовані мови з чітко продуманою системою доброї взаємодії між собою понять, досить загальних, але в той же час простих і ясних для людини, дозволяють істотно підвищити ефективність розробки та розвитку програмного забезпечення САПР, особливо її прикладних компонентів.
Якісною відмінністю цих мов від мов кодового і низького рівнів є їх машинна незалежність: програми процедурно-орієнтованих мов можуть виконуватися на будь-яких ЕОМ, забезпечених відповідними мовними процесорами. Останні автоматично відображають мовні конструкції, зрозумілі людині, у семантично еквівалентні конструкції машинної мови. При цьому лаконічним і виразним вихідним конструкціям ставляться у відповідність, як правило, значні за обсягом сукупності машинних команд і даних. Тим самим істотно підвищується продуктивність розробників програмного забезпечення САПР. Разом з тим машинні програми, що видаються мовними процесорами, є неекономними за споживанням ресурсів ЕОМ, так як машинно-орієнтовані мови дозволяють створювати, як правило, більш компактні та швидкі програми.
Представлення алгоритму розв'язання задачі на процедурно-орієнтованій мови полягає у вказівці послідовності процедурних кроків, які конкретизують обчислювальний процес. При цьому типовими процедурними кроками є введення даних, вибірка значень, обчислення за формулами, присвоювання значень змінним, перевірка логічних умов, передача керування певних кроків, виведення даних. Вираз цих дій проводиться в термінах допустимих типів даних, типів операцій і механізмів керування послідовністю застосування операцій і даних. Різницю у змісті цих понять обумовлюють основні відмінності мов програмування високого рівня. Найбільшого поширення в САПР отримали мови високого рівня С++, Delphi, Паскаль.
В
иходячи
з вищесказаного, можна скласти схему
лінгвістичного забезпечення САПР.
Рис. 4.1. Схема лінгвістичного забезпечення САПР.
Лінгвістичне забезпечення діалогових САПР грунтується на природних мовах (найбільш поширена англійська), загальноприйнятих символьних і графічних образах. Проектування в діалоговому режимі побудовано так, що користувач, контактуючи з комп’ютерною системою за схемою «запитання - відповідь - запитання - відповідь - ...,» видає інструкції управління проектуванням, які мають характер або розпорядження ЕОМ, або відповіді на її запити.
Ефективне функціонування САПР можливо тільки при наявності і заданому порядку взаємодії приведених вище компонентів забезпечення автоматизованого проектування (математичного, лінгвістичного, технічного, інформаційного, програмного, методичного, організаційного).