Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СОТ СП.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
11 Мб
Скачать
☆

Студент повинен

знати:

  • Особливості візуального програмування.

  • Структуру вікна С++ Builder.

  • Елементи головного вікна програмного середовища С++ Builder.

  • Палітра компонент. С++ Builder.

  • Компоненти групи Standart.

  • Компоненти групи Additional.

  • Властивості компонентів палітр компонент.

  • Події компонент палатр компонент.

  • Поняття інкапсуляції.

  • Поняття успадкування.

  • Поняття поліморфізму.

  • Види специфікаторів доступу.

вміти:

  • Застосовувати ООП у власних програмах.

Питання для самоконтролю

  1. Перелічіть особливості візуального програмування.

  2. Назвіть елементи структури вікна С++ Builder.

  3. Перелічіть елементи головного вікна програмного середовища С++ Builder.

  4. Назвіть призначення палітри компонент С++ Builder.

  5. Перелічіть компоненти групи Standart.

  6. Перелічіть компоненти групи Additional.

  7. Перелічіть властивості компонентів палітр компонент.

  8. Перелічіть події компонент палатр компонент.

  9. Дайте означення поняття інкапсуляції.

  10. Дайте означення поняття успадкування.

  11. Дайте означення поняття поліморфізму.

  12. Перелічіть види специфікаторів доступу.

Література

[9] c. 272-296, [12] c. 190-192

Тема 3. Мова програмування Assembler

3.1. Спеціалізоване використання регістрів процесора Intel 8086 Питання для опрацювання

  1. Спеціалізоване використання регістрів даних.

2. Спеціалізоване використання регістрів-вказівників.

Методичні рекомендації

Під час вивчення даної теми студенти мають ознайомитись із порядком спеціалізованого використання регістрів загального призначення процесора Intel 8086 в деяких командах Ассемблера.

Використання регістрів загального призначення (регістрів даних, а також регістрів вказівників) у програмах є необмеженим, але їхні назви говорять про те, що у деяких командах вони використовуються неявним чином для зберігання певних даних, і тому при виконанні таких команд програміст повинен пам’ятати про можливість зміни інформації, яка в них зберігається. Тому з одного боку слід показати можливість спеціального використання регістрів, а з іншого – допомогти зрозуміти походження їхніх назв.

Очевидно, що крім них у процесорі є ще певні службові регістри, але їх особливістю є те, що вони використовуються лише операційною системою і недоступні для використання у програмах користувача.

1. Спеціалізоване використання регістрів даних.

Регістр ax у всіх командах мав би бути найбільш вживаним, оскільки він є найпершим. Очевидно, що у ньому можна зберігати будь-яку інформацію, але оскільки завантаження і виконання команд у процесорах, які підтримують акумуляторну архітектуру системи команд відбувається швидше – то цей регістр виконує роль акумулятора. Тому якщо операндом певної команди буде цей регістр (або його молодша половина al), то така команда буде виконуватись швидше, а виконавчий файл займати менше місця в пам’яті. Також в операціях обміну даними з портами вводу/виводу операндами можуть бути лише регістри ah та al. За рахунок цього швидкість цієї операції збільшується, оскільки процесор не читає операнда команди, а одразу знає, що ним є регістр-акумулятор.

Регістр bx називають ще зміщенням бази, і він може використовуватись у командах непрямої адресації (зокрема базово-індексної). Тому як правило, його використовують для зберігання індексів масивів під час їх обробки в циклі (ПР №12), хоча таку ж саму функцію може виконувати й регістр bp.

Регістр сх є регістром-лічильником. І тому у програмах його прийнято використовувати для організації циклів. Крім того, він як лічильник неявним чином використовується в командах циклу LOOP, а також у командах роботи з рядками.

Регістр dx є регістром даних. Тому основним його призначенням є зберігання даних користувача, і він не використовується неявним чином у певних командах Асемблера. Але оскільки одного регістра для зберігання усіх змінних програми є недостатньо,  то з такою самою метою програмістом можуть використовуватись й інші регістри загального призначення.

Також регістри даних можуть використовуватись спільно у певних командах Асемблера. У першу чергу тих, результати яких не поміщаються у розрядність одного регістра (наприклад множення). Так, у командах множення і ділення регістри АХ і DX виступають як неявні операнди;