ЛР№2_СПО_Балыбердин_Н.А.
.docxФГБОУ ВО Уфимский государственный авиационный технический университет
Кафедра АСУ
Лабораторная работа № 2
Тема: «УПРАВЛЕНИЕ ВЫВОДОМ ТЕКСТОВОЙ ИНФОРМАЦИИ НА ЭКРАН»
по дисциплине: «Системное программное обеспечение»
Выполнили: ст. гр. ИВТ-414
Балыбердин Н.А.
Проверил:
Преподаватель кафедры АСУ
Лянцев О.Д.
Уфа 2020
Цель работы: Целью настоящей работы является изучение возможностей базовой системы ввода-вывода при выводе текстовой информации на экран монитора.
Задания:
-
С помощью отладчика DEBUG создать и выполнить ассемблерную программу, которая устанавливает сиреневый фон всего экрана и задает в центре экрана красное окно меньшего размера.
Код программы:
Mov ax,0600
Mov cx,0000
Mov dx, 184f
Mov bh, 57
Int 10
Mov ax,0600
Mov cx, 0a23
Mov dx,1033
Mov bh, 47
Int 10
Int 20
Jmp 0100
Скриншоты:
-
Доработайте программу по пункту 3.1, чтобы вывести в центр окна свою фамилию.
Код программы:
Mov ax, 0600
Mov cx, 0000
Mov dx, 184f
Mov bh, 52
Int 10
Mov ax,0600
Mov cx, 0a20
Mov dx,1034
Mov bh,42 Цвет текста и фона маленького прямоугольника (зеленый 0010-2).
Int 10
Mov ah,02
Mov bh,00
Mov dx 0d21
Int 10
Mov dx,0140
Mov ah, 09
Int 21
Mov ah,02
Mov bh,00
Mov dx,1800
Int 10
Int 20 Без int 20 будет работать без прерывания (можно еще воспользоваться int 16 по нажатию кнопки)
Jmp 10
Db ‘BALYBERDIN$’
Скриншоты:
-
Оттранслируйте, скомпонуйте и выполните программу по пункту 3.2.
Код программы:
Оттранслировали и скомпоновали:
Скриншоты:
-
Оттранслировать программу, приведенную в разделе 2.2.13, скомпоновать ее и преобразовать в файл типа .СОМ для выполнения.
Оттранслировали и скомпоновали:
Сначала получили объектный файл и файл листинга.
Затем получили 2 исполняемых файла и файл карты связей.
Скриншоты:
Ответы на контрольные вопросы:
1. Сколько цветов можно обеспечить для фона и для текста на стандартном цветном графическом адаптере (CGA) в текстовом режиме?
16 цветов для текста и 8 цветов для фона:
Тремя основными цветами являются красный, зеленый и синий. Их можно комбинировать друг с другом для получения восьми цветов, включая черный и белый. Используя два уровня яркости для каждого цвета, получим всего 16 цветов:
I R G B I R G B
Черный 0 0 0 0 Серый 1 0 0 0
Синий 0 0 0 1 Ярко-синий 1 0 0 1
Зеленый 0 0 1 0 Ярко-зеленый 1 0 1 0
Голубой 0 0 1 1 Ярко-голубой 1 0 1 1
Красный 0 1 0 0 Ярко-красный 1 1 0 0
Сиреневый 0 1 0 1 Ярко-сиреневый 1 1 0 1
Коричневый 0 1 1 0 Желтый 1 1 1 0
Белый 0 1 1 1 Ярко-белый 1 1 1 1
фон текст
Атрибут: BL R G B I R G B
Таким образом, любые символы могут быть отображены на экране в одном из 16 цветов. Фон любого символа может иметь один из первых восьми цветов.
2. Напишите байты-атрибуты в двоичном формате для: а) ярко-голубого на сиреневом; б) жёлтого на коричневом; в) серого на красном с миганием.
А) ярко-голубой на сиреневом - 5B-0101 1011
Б) жёлтый на коричневом – 6E-0110 1110
в) серый на красном с миганием – С8-1100 1000
3. Напишите команды для вывода пяти символов карточной масти "бубны" в текстовом режиме ярко-зелёным цветом на сиреневом фоне. mov ax, 0904
mov ax, 0904
mov bx, 005A
mov cx, 5
int 10
Скриншоты:
4. Определите данные и напишите команды, необходимые для вывода на экран функцией 9Н прерывания INT 21H сообщения “What is the current date (mm/dd/yy)?. После вывода на экран сообщения должен подаваться звуковой сигнал.
MOV AH,09 ; вывод строки на экран
MOV dx,111 ;Адрес начала строки помещен в DX. Знак доллара не выводится.
INT 21 ; прерывание
MOV AH,02 ; подача(вывод) звукового сигнала
MOV dl,07 ; функция вывода сигнала
INT 21 ; прерывание
MOV ah,08 ; задержка
INT 21 ; прерывание
DB ‘What is the current date(mm/dd/yy)?’,’$’ ;Строка для вывода
Вывод: Мы изучили возможности системной программы – отладчика DEBUG по программированию компьютера IBM в машинных кодах.