
- •Затверджую Начальник спеціальної кафедри № 5
- •Методична розробка
- •Тема 1. Мови асемблера та їх використання для побудови базових елементів системних програм.
- •Тема 1/3
- •Контрольні запитання про таблиці системних програм
- •Принципи побудови професійних системних програм
- •Короткі теоретичні відомості
- •Знайомство зі створенням багатомодульних проектів з використанням мов програмування високого рівня Створення проектів, орієнтованих на налагодження системних програм
- •Синтаксичне налагодження проектів
- •Семантичне або змістовне налагодження проектів
- •2. Використання імен даних, їх структур та полів у вставках на мові асемблера
- •Організація вставок на мові Асемблера
- •3. Програмування обробки математичних виразів і операцій присвоювання та їх налагодження
- •Основні способи використання полів структур у вставках на мові Асемблера
- •Структура програмного шаблона виконання роботи
- •Рекомендації з використання функції відображення
- •Формати для виведення даних функціями форматного виведення
- •Завдання на роботу
Знайомство зі створенням багатомодульних проектів з використанням мов програмування високого рівня Створення проектів, орієнтованих на налагодження системних програм
Оскільки модульна структура проектів в різних системах є однаковою, то важливо при перекомпоновці програмних модулів і заголовків розмістити їх відповідним чином у проекті. У будь-якій системі програмування є можливість створити проекти для автономного налагоджування програмних модулів та проекти розв’язання складних задач, в тому числі і в галузі системного програмування. Проекти, що створені для проведення занять з комп’ютерного практикуму, призначаються для налагодження елементів системних програм, їх окремих елементів або об’єктів. За базову систему програмування взято студію розробника фірми Microsoft (Microsoft Developer Studio), починаючи з версії 6.0.
Після підготовки вхідних текстів всіх модулів або відповідних заглушок робиться спроба побудувати виконавчі коди проекту шляхом компіляції і компонування вхідних текстів разом з наявними бібліотеками підпрограм і функцій. Для цього слід зробити потрібні в інструментальній системі програмування для компілятора (включаючи доступ до файлів заголовків з розширенням *.h і файлів реалізації з розширенням *.cpp).
Синтаксичне налагодження проектів
Для аналізу синтаксичної коректності проекту та його можливого наступного виконання треба з меню діалогової оболонки системи запустити проект з можливістю його наступного виконання. При виявленні помилок треба скорегувати некоректні літери та конструкції з іменами користувачів з тим, щоб одержати синтаксичну коректність та необхідну однозначну визначеність імен. Після виправлення синтаксису слід повторювати запуск проекту, допоки після усунення помилок компіляції і компонування.
Файли заголовків визначають прототипи викликів функцій, застосовуються для контролю синтаксичної коректності викликів при використанні функцій в програмі. Невідповідність заголовків фактично наявним реалізаціям функцій призводить до помилок при компонуванні програмою LINK. У випадку таких помилок треба насамперед перевірити невідповідність прототипів у файлів заголовків і заголовків у файлах реалізації функцій, а також наявність повторних реалізацій функцій в різних модулях.
Семантичне або змістовне налагодження проектів
Для аналізу семантичної коректності проекту необхідно аналізувати відображення підсумкових та проміжних результатів. Для цього використовують оператори виведення і точки призупинки програми. Результати одержані в різних змінних порівнюють з очікуваними і роблять висновок про коректність програми.
Завдання для роботи на комп’ютері:
- за допомогою студії розробника Microsoft Developer Studio завантажте простір проектів spLb1.dsw (через меню File -> OpenWorkspace), зробіть активним програмний проект spLb1.dsp (через меню Project -> Set Active Project) і спробуйте побудувати виконавчі коди цього проекту з можливістю наступного виконання (через пункти меню Build -> Execute);
- в разі наявності синтаксичних помилок спробуйте виправити їх текстовим редактором і повторити попередній пункт;
- при відсутності синтаксичних помилок перевірте змістовну коректність виконання програм шляхом аналізу відповідності результатів заданим задачам;
- просуваючись курсором по тексту розставте контрольні точки в тілі функції main(…);
- запустіть виконання програми до контрольної точки і проаналізуйте значення змінних в кожній контрольній точці;
- обравши в контекстному меню (що запускається правою кнопкою миші) вікна, в якому виникла призупинка, пункт Disassembly, прогляньте послідовності команд на мові Асемблера для реалізації програм у відповідному вікні;
- обравши в контекстному меню (що запускається правою кнопкою миші) вікна рамки пункт Registers прогляньте, що відбувається в регістрах процесора.