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

1.3. Вивід на екран засобами dos

Так як і при вводі з клавіатури, операційна система представляє декілька способів виводу даних на екран:

  • звернення до екрану з допомогою файлової функції 40h переривання INT 21h;

  • використання групи функцій вводу-виводу із діапазону 01h…0Ch переривання INT 21h;

  • вивід на екран засобами BIOS з допомогою переривання INT 10h.

DOS (переривання 21h) підтримує тільки текстовий монохромний вивід; з допомогою функцій BIOS можна реалізувати усі можливості відеосистеми: вивід кольорових символів, становлення відеорежимів, переключання відеосторінок, завантаження шрифтів і інш.

Вивід на екран засобами файлової системи (переривання 21h, функція 40h) відбувається так само, як і запис в файл. Використовується дескриптори 1 (стандартний вивід) або 2 (стандартна помилка), які закріплені за екраном. Вивід через дескриптор 1 може бути перенаправлений в файл або на інший пристрій (послідовний порт, принтер); вивід через дескриптор 2 не перенаправляється і звичайно використовується для виводу на екран службових повідомлень. Число символів, які потрібно вивести, вказуються в регістрі CX, а адрес стрічки, яку потрібно вивести – в регістрах DS:DX. Коди 08h (крок назад), 0Аh (перевід стрічки), 0Dh (повернення каретки) і деякі інші розглядаються як керівні і виконуються відповідні ним дії.

Як уже відмічалось, DOS не підтримує колір і, крім того, не має засобів очищення екрана і установки позиції курсору. Таким чином, вивід з допомогою функцій DOS відбувається тільки стрічка за стрічкою, при тому по мірі виводу стрічок зображення на екрані автоматично прокручується вверх. Але в склад DOS включається драйвер ANSI.SYS, встановлення якого (з допомогою файла CONFIG.SYS) трохи розширює можливості виводу на екран. В тому випадку на екран, крім розміщених текстів, посилаються Esc-послідовності, які дозволяють змінювати колір символів, установлювати позицію курсору і виконувати деякі інші настройки екрана (і клавіатури).

Другий спосіб виводу на екран текстової інформації відбувається з допомогою трьох функцій DOS, представлених в табл. 1.3.

Таблиця 1.3. Функції DOS виводу на екран

Функція

Призначення

02h

Вивід символу

06h

Прямий ввід-вивід

09h

Вивід стрічки

Функція 09h широко використовується в системних і прикладних програмах для виводу на екран інформаційних повідомлень. Вона не вимагає вказувати дескриптора (хоча в дійсності використовує дескриптор стандартного виводу 1); немає потреби також вказувати довжину стрічки, яку виводять. Перед викликом переривання адрес повідомлення заноситься в регістри DS:DX; повідомлення повинне закінчуватись символом $ (код якого рівний 24h). При відсутності у стрічці цього символу на екран буде виводитися вмістимість всіх байтів пам’яті, розміщених за стрічкою, до цього часу, коли в пам’яті випадково не зустрінеться код 24h.

Функція 02h викликає передачу на екран одного символу, який поміщається в регістр DL. Для виведення послідовності символів функцію потрібно використовувати в циклі.

Функція 06h не має особливих властивостей перед іншими функціями і використовується рідко.