Lab. 6. AC Utm Fcim [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ МОЛДОВЫ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ МОЛДОВЫ ФАКУЛЬТЕТ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ, ИНФОРМАТИКИ И МИКРОЭЛЕКТРОНИКИ КАФЕДРА АВТОМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

ОТЧЕТ По лабораторной работе №6 по дисциплине Архитектура компьютеров По теме: ПРИМЕНЕНИЕ СЕРВИСНЫХ ФУНКЦИЙ BIOS ДЛЯ РАБОТЫ С ЭКРАНОМ И КЛАВИАТУРОЙ

Выполнил: студент группы TI – 155

Корнеску Роберт

Проверил:

Колесник Виктор

Кишинев 2017 Тема: Применение сервисных функций BIOS для работы с экраном и клавиатурой. Цель работы: Изучение функций BIOS. Задание: Вывести на экран флаг некоторого государства. Теоретические сведения Прерывания BIOS: Int 10h: – функция 00h – установка видеорежима; – функция 02h – установка позиции курсора; – функция 03h – считывание позиции и размера курсора; – функция 05h – установка видеостраницы; – функция 06h (07h) – инициализация или прокрутка окна вверх (вниз); – функция 08h – чтение символа и атрибута в позиции курсора; – функция 09h – запись символа и атрибута в позицию курсора; – функция 0Ah – запись символа в позицию курсора с текущим атрибутом; – функция 0Сh – запись графической точки; – функция 0Eh – запись символа в режиме телетайпа с текущим атрибутом; – функция 0Fh – получить режим дисплея; – функция 1003h – переключение назначения старшего бита байта атрибута: мерцание/яркость, – функция 13h – запись строки с заданным атрибутом в режиме телетайпа. Int 16h: – функция 00h (10h) – чтение символа с клавиатуры с ожиданием; – функция 01h (11h) – проверка буфера клавиатуры на наличие в нём символа; – функция 02h (12h) – получение флагов (расширенной) клавиатуры. Int 15h,

функция 86h – задержка.

Int 1Ah,

функция 00h – получение системного времени.

Исходные коды .asm Отображение на экране флага Франции. Код Include irvine16.inc .data w dw 100 h dw 170 .code

colorize PROC,i:WORD,color:BYTE mov dx,0 push ax mov ax,i dec ax mul w mov si,ax add ax,w mov di,ax pop ax outer: mov cx,si inner: mov al,color ; цвет точки int 10h inc cx ; след. точка cmp cx,di jne inner inc dx ; след. строка cmp dx,h jne outer ret colorize ENDP main proc start: mov ax,@data mov ds,ax mov ah,00h ; устанавливаем видеорежим mov al,12h ; разрешение 640x480 int 10h ; вызов BIOS mov ah,0ch ; запись графической точки mov bh,0 ; флаг invoke invoke invoke mov int mov int Exit main ENDP END main

; страница video (базовая 0)

италии colorize,1,1h colorize,2,0Fh colorize,3,4h

ah,1 21h ax,03 10h

; синий ; белый ; красный

; click (pauza) ; функция DOS, ожидание ввода ; текстовый режим

; завершение процедуры main ; завершение программы/точка входа в программу

Результат работы программы

Выводы В данной лабораторной были изучены и применены на практике некоторые функции прерывания BIOS такие, как функция 00h – установка видеорежима, функция 0Сh – запись графической точки и др. Результатом выполнения лабораторной является программа, отображающая на экране флаг Ирландии.