- •1. Аналіз класів пам’яті змінних
- •2. Аналіз класів пам’яті функцій.
- •3. Концепція типу у мові програмування. Аналіз відомих методів типізації
- •4. Вільні масиви в мові програмування Сі, їх призначення та відмінність від звичайних. Навести приклади опису та застосування.
- •7, 26. Правила формування атрибутів доступу до членів похідного класу в залежності від атрибуту доступу базового класу та заданого атрибуту у списку спадкування.
- •8, 27. Вказівники та динамічна пам’ять. Аналіз методів виділення та звільнення динамічної пам’яті
- •9, 28. Аналіз методів передачі параметрів до підпрограм через локальні та нелокальні середовища
- •10. Зв’язний список та наскрізний прохід по зв’язному списку. Операції над зв’язними списками. Додавання та вилучення елементів у зв’язному списку. Навести приклади.
- •11. Структури даних. Типові статичні та динамічні структури даних. Доступ до даних.
- •12. Аналіз методів подання графів у вигляді динамічних та статичних структур даних. Матриця суміжності
- •13. Парадигма об’єктно-орієнтованого програмування та основні його принципи, їх зміст.
- •14. Порівняльний аналіз статичних та віртуальних методів в об’єктно-орієнтованому програмуванні, їх особливості. Призначення та правила формування конструкторів та деструкторів.
- •15. Правила віртуалізації методів в ооп.
- •16. Поняття технології створення програмного забезпечення та основні технологічні етапи. Приклади технологій.
- •17. Взаємозв’язок імен масивів та вказівників в мові програмування Сі. Операції над вказівниками. Приклади для одно- та двомірних масивів.
- •18. Контейнерні класи та їх призначення
- •19, 29. Вкладені класи та їх призначення.
- •20. Локальні класи та їх призначення
- •23. Абстрактні типи даних, правила і засоби їх формування.
- •30. Математичні моделі біполярного транзистора програми Spice
- •31. Алгоритм розрахунку перехідної характеристики програми Spice
- •32. Алгоритм розрахунку режиму за постійним струмом програми Spice
- •34. Поняття об’єкту в мові vhdl
- •35. Поняття сигналу в мові vhdl. Драйвер сигналу
- •36. Модель дискретного часу в мові vhdl.
- •37. Модель польового транзистора програми Spice
- •38. Архітектурне тіло та об’єкт в мові vhdl
- •39. Призначення та можливості програми spice
- •40. Оператор процесу в мові vhdl
- •41. Створення структурного опису цифрової системи мовою vhdl
- •42. Змінні та сигнали в мові vhdl
- •43. Присвоювання сигналу в мові vhdl
- •44. Планування транзакцій та драйвер сигналу в мові vhdl
- •45. Розрахунок амплітудно-частотної характеристики в програмі Spice.
- •46. Послідовні та паралельні оператори мови vhdl
- •47. Створення примірників компонентів та опис топології цифрового пристрою мовою vhdl
- •48.Опис рівня регістрової передачі мовою vhdl
- •49. Вхідна мова програми Spice
- •50. Модель Еберса-Мола біполярного транзистора
- •51. Модель Гумеля-Пуна біполярного транзистора
- •52. Інерційна та транспортна затримки в мові vhdl
- •53. Принципи роботи системного інтерфейсу isa (8 біт).
- •54. Стандарти систем автоматизації, побудованих на основі системних інтерфейсів.
- •55. Інтерфейс hs-488 ( швидкісний канал спільного користування).
- •57, 66, 70, 71.Канал спільного користування. Структура магістралі. Робота шини. Реалізація інтерфейсу.
- •58, 73. Приладовий інтерфейс (канал загального користування). Адресування приладів на магістралі. Алгоритми обміну інформацією в магістралі.
- •59. Приладовий інтерфейс (канал загального користування). Пошук джерела сигналу “запит на обслуговування”. Послідовне опитування.
- •60. Приладовий інтерфейс (канал загального користування). Пошук джерела сигналу “запит на обслуговування”. Паралельне опитування
- •64. Основні принципи перетворення сигналів. Дискретизація сигналів. Цифро-аналогові перетворювачі.
- •67, 72. Основні принципи перетворення сигналів. Дискретизація сигналів. Цифро-аналогові перетворювачі.
- •65, 68, 69. Аналогово-цифрове перетворення. Принципи роботи. Реалізація інтерфейсу з ibm pc. Реалізація систем збору інформації
7, 26. Правила формування атрибутів доступу до членів похідного класу в залежності від атрибуту доступу базового класу та заданого атрибуту у списку спадкування.
Наведемо таблицю правил формування атрибутів доступу у похідному класі в залежності від атрибуту доступу у базовому класі та атрибуту доступу заданому у базовому списку.
Задано в базовому списку |
Базовий клас |
Похідний клас |
private |
private → protected → public → |
private private private |
protected |
private → protected → public → |
private protected protected |
public |
private → protected → public → |
private protected public |
Технічно специфікатор доступу у базовому списку не обов’язковий. Якщо специфікатор доступу не вказаний, а похідний клас визначений ключовим словом class,то базовий за замовчуванням спадкується як закритий. Якщо похідний клас визначений з ключовим словом struct, то базовий клас за замовчанням спадкується, як відкритий.
Важливо розуміти, що якщо специфікатор доступу є private, то хоча відкриті члени базового класу стають закритими у похідному, вони залишаються доступними для функцій членів похідного класу.
Приклад
#include <iostream> using namespace std; class base ( int x;
public :
void setx(int n) { x = n; }
void showxO { cout << x << '\n'; }
};
class derived: private base {
int y;
public:
void setxy(int n, int m) { setx(n); у = га; }
void showxyO { showxf); cout << у << '\n'; }
};
int main ()
{
derived ob;
ob.setxy(O, 20) ;
ob.showxy();
return 0;
}
8, 27. Вказівники та динамічна пам’ять. Аналіз методів виділення та звільнення динамічної пам’яті
.
9, 28. Аналіз методів передачі параметрів до підпрограм через локальні та нелокальні середовища
Call by value – передача параметрів за значенням.
В цьому випадку компілятор, обробляючи виклик, виконує такі дії:
1)записуються у стек результати обчислень (якщо цей список не порожній)
2)формується виклик функції з поверненням з неї (виклик типу near або far, в залежності від моделі пам’яті).
3)під час виконання функція читає копії даних зі стеку і виконує необхідні дії
Call by Reference – за значенням вказівника.
Функції зі змінною кількістю аргументів
Ознакою ф-ї зі змінною к-тю аргументів є лексема.
У цьому випадку компілятор припиняє аналіз аргументів.
1)перший аргумент – к-ть параметрів
2)код ‘\о’ – маркер того, що список вичерпано
Вся робота на правильність аргументів – робота програміста.
Передача аргументів за замовченням
В С можна в процесі опису задавати параметри за замовченням. Мають бути останніми у списку аргументів.
char func (char ch, int i, int k=5)
{/*тіло функції*/}
В цьому випадку виклики функцій можуть бути такими:
func (‘А’, 10)
для реалізації передачі імені ф-ї як аргументу використовуються вказівники на ф-ї. Для опису вказівника на ф-ю використовується така конструкція:
typedef void (*meny action*) ( )
meny action – вказівник на ф-ю, яка повертає тип void, що не має аргументів.
При передачі параметрів через локальні середовища аргументи передаються підпрограмам через стек. Параметри треба записати у стек, під час виклику функції прочитати, що уповільнює виконання. Перевагою є те, що використовуючи механізм прототипування функцій маємо механізм більш жорсткого контролю параметрів підпрограми.
При передачі через нелокальні середовища (спільна область пам’яті) стек виключений з механізму передачі параметрів. Це прискорює виконання програми, але має недолік, який полягає в тому, що при наявності значної кількості файлів проекту, функцій, стежити за можливими варіантами модифікації глобальних змінних стає досить складно.