- •Лабораторна робота №1 Системні плати пк. Шини сучасних пк
- •Теоретичні відомості
- •1). Підтримка сучасних процесорних технологій.
- •2). Гнучкість стосовно швидко змінних процесорних технологій.
- •3). Підтримка інших нових технологій.
- •Контрольні запитання
- •1). Мікросхема з scsі bіos є на самому контролері (як на відеокартах).
- •2). Образ scsі bіos прошитий у Flash-bіos материнської плати.
- •3). Scsі bіos немає взагалі. Робота всіх scSі-пристроїв забезпечується тільки драйверами операційної системи.
- •1). Мікросхеми пзп.
- •2). Статичне озп.
- •3). Динамічне озп (дозп).
- •Завдання для лабораторної роботи
- •Контрольні запитання
- •1) Управління динаміком з використанням таймера.
- •2) Управління динаміком без таймера.
- •3) Відтворення музики.
- •Завдання для лабораторної роботи
- •Контрольні запитання
- •Лабораторна робота №6. Клавіатура
- •Теоретичні відомості
- •1). Вхідній і вихідній буфери даних.
- •2). Регістр стану (rs).
- •3). Порт контролера 8042 (р1, р2).
- •4) Керуючі сигнали t0 і t1.
- •5) Інтерфейс 8042 з клавіатурою.
- •6) Програмування контролера.
- •1). Обробка клавіш зсуву (Shift, Ctrl, Alt).
- •2). Обробка клавіш-перемикачів (Insert, CapsLock, NumLock, ScrollLock.).
- •3). Комбінація Ctrl-Alt-Del.
- •4). Комбінація Ctrl-Break.
- •6). Алфавітно-цифрові клавіші.
- •7). Спеціальні скан-коди.
- •1) Режими роботи.
- •2) Програмування контролера 8048 блоку клавіатури.
- •Завдання до лабораторної роботи.
- •Контрольні запитання
- •Лабораторна робота №7. Робота з відеопам’яттю в текстовому режимі
- •Теоретичні відомості
- •1) Монохромний mda.
- •2) Кольоровий графічний адаптер cga.
- •3) Розширений графічний адаптер ega.
- •4) Адаптери vga і svga.
- •5) Адаптер mcga.
- •6) Графічні сопроцесори.
- •1) Адаптери mda і cga.
- •2) Адаптер ega.
- •3) Адаптер mcga.
- •4) Адаптер vga.
- •Завдання до лабораторної роботи
- •Контрольні запитання:
- •Лабораторна робота №8 Робота з відеопам’яттю в графічному режимі.
- •Теоретичні відомості.
- •Завдання до лабораторної роботи
1). Обробка клавіш зсуву (Shift, Ctrl, Alt).
Якщо скан-код належить одній з чотирьох клавіш зсуву, це відображається встановленням відповідного біта в інформаційному байті KD_FLAG розташованому за адресою 0040:0017h в області даних BIOS. Значення бітів, при умові якщо вони дорівнюють 1, наступні:
0: натиснутий правий Shift;
1: натиснутий лівий Shift;
2: натиснутий Ctrl;
3: натиснутий Alt;
4: режим ScrollLock увімкнений;
5: режим NumLock увімкнений;
6: режим CapsLock увімкнений;
7: режим Insert увімкнений.
При знаходженні скан-коду відпускання клавіші зсуву відповідний біт скидається в 0.Такий метод дозволяє програмі INT 09h завжди знати, яка з цих клавіш натиснута.
2). Обробка клавіш-перемикачів (Insert, CapsLock, NumLock, ScrollLock.).
Логіка роботи клавіш-перемикачів відмінна від логіки роботи клавіш зсуву. Коли програма INT 09h зустрічає скан-код клавіші-перемикача, вона підготовляється до встановлення (з використанням оператора OR) відповідного біта в байті KD_FLAG1. Цей байт розташований за адресою 0040:0018h. Значення бітів, при умові якщо вони дорівнюють 1, наступні:
0: натиснутий лівий Shift разом з Ctrl;
1: натиснутий лівий Shift разом з Alt;
2: натиснутий SysReq;
3: натиснуті клавіші Ctrl з NumLockl;
4: режим ScrollLock увімкнений;
5: режим NumLock увімкнений;
6: режим CapsLock увімкнений;
7: режим Insert увімкнений.
Перед встановленням цього біта INT 09h перевіряє, чи не був він встановлений раніше. Якщо був, то INT 09h вважає, що пройшов автоповтор і ніяких дій не виконує.
3). Комбінація Ctrl-Alt-Del.
Комбінація Ctrl-Alt-Del.має спеціальне значення. При її знаходженні в двобайтове слово RESET_FLAG, яке знаходиться в BIOS за адресою 0040:0072h, заноситься значення 1234h і виконується перехід на процедуру ініціалізації встановленням в 0 нульового розряду вихідного порту P2. Програма ініціалізації перевіряє RESET_FLAG і, якщо його значення дорівнює1234h – виконується “тепле” перезавантажання.
4). Комбінація Ctrl-Break.
При знаходженні цієї комбінації INT 09h виконує декілька дій. Спочатку очищається буфер клавіатури шляхом встановлення показника початку буфера рівним показнику кінця. Після цього INT 09h встановлює в 1 старший біт байта BIOS_BREAK с адресою 0040:0071h. Будь-яка програма може перевірити значення цього біта для визначення стану Ctrl-Break. Далі INT 09h викликає переривання INT 1Вh. Зазвичай, воно вказує на оброблювач DOS, але будь-яка програма може перехопити цей вектор і самостійно обробити комбінацію. Якщо переривання INT 1Вh викликає оброблювач DOS, то останній встановлює внутрішній прапорець Ctrl-Break DOS. При цьому будь-яка програма, що використовує функції вводу-виводу DOS буде перервана. Останнє що робить INT 09h з Ctrl-Break, це поміщає нульовий символ і скан-код в буфер клавіатури.
Ввод Ctrl-C також інтерпретується, як Ctrl-Break. Виконання цієї команди не є функцією INT 09h. Комбінація обробляється як і будь-який інший символ, а вже DOS сама інтерпретує її як команду переривання.
5). Print Screen.
При натисканні цієї клавіші INT 09h просто викликає переривання INT 05h для копіювання зображення екрана.