ВУЗ:
Составители:
7
6. Работа с видеопамятью (виртуальный дисплей)
В нижеследующих задачах студент должен использовать запись информации в видеопамять
компьютерной системы. В системе AsmEd эта память начинается с адреса 0F600h и имеет структу-
ру, стандартную для дисплеев IBM PC, т.е. чередующиеся байты кодов символов и цветовых атрибу-
тов. Виртуальный дисплей системы AsmEd работает только в текстовом режиме (возможно исполь-
зование псевдографических
символов, как в задачах 5 и 6). Рекомендуется включить DOS-кодировку (ме-
ню «Вид»-«Настройка»-«Символы»), задержка автовыполнения должна быть выключена (равна 0).
Разумеется, вывод на дисплей можно комбинировать с задачами из других разделов.
Перед началом работы студенту рекомендуется повторить раздел 2.4 и Приложение 1
«Методических указаний».
1. Дан массив байтов, заполненный одноразрядными десятичными числами. Пользу-
ясь прямой записью в видеопамять в текстовом режиме, вывести массив на экран
зелёными буквами на красном фоне.
2. Дан такой же массив, как в предыдущей задаче. Вывести его на экран аналогичным
образом, но на белом фоне. Четные элементы выводить красным цветом, нечетные –
зелёным цветом.
3. Дано слово на русском языке. Выдать на дисплей: согласные - белым цветом, глас-
ные - красным. Фон оставить чёрным.
4. Дана строка символов. Выдать на дисплей с циклическим перебором цветов в пре-
делах от 9 до 14 на чёрном фоне: первый символ выводится цветом 9, второй - 10,
…, шестой - 14, седьмой - опять 9 и так далее.
5. Дан массив байтов. Построить диаграмму (горизонтальные столбцы) из символов с
кодом 219 (0DBh) на чёрном фоне. В каждом байте: младшие четыре разряда - цвет
столбца, старшие - длина столбца.
6. Написать программу, изображающую на виртуальном дисплее государственный
флаг России из трёх полос (коды и порядок цветов сверху вниз: 15-белый, 9-синий,
12-красный). Каждую
полосу составить из пяти символов с кодом 219 (0DBh). Фон
изображения оставить чёрным.
7. Дан байт (возможен ввод из порта 2 или 3). Получить его представление на вирту-
альном дисплее в шестнадцатеричном виде с добавлением буквы ‘h’ в конце.
8. Дан байт (возможен ввод из порта 2 или 3). Получить его представление на вирту-
альном дисплее в
двоичном виде с добавлением буквы ‘b’ в конце.
9. Написать подпрограмму (процедуру) для вывода произвольной строки текста, нахо-
дящейся в оперативной памяти, на виртуальный дисплей. Подпрограмма должна
быть объявлена с помощью директив PROC и ENDP, вызываться командой CALL и
возвращать управление в вызвавшую программу по команде RET. Подпрограмма
должна получать цветовой атрибут в регистре AL, указатель на строку - в регистре
BX, координаты X и Y первого символа выводимой строки - в регистрах DH и DL.
Перед началом работы внимательно изучите пример программы из Приложения 2
«Методических указаний».
7 6. Работа с видеопамятью (виртуальный дисплей) В нижеследующих задачах студент должен использовать запись информации в видеопамять компьютерной системы. В системе AsmEd эта память начинается с адреса 0F600h и имеет структу- ру, стандартную для дисплеев IBM PC, т.е. чередующиеся байты кодов символов и цветовых атрибу- тов. Виртуальный дисплей системы AsmEd работает только в текстовом режиме (возможно исполь- зование псевдографических символов, как в задачах 5 и 6). Рекомендуется включить DOS-кодировку (ме- ню «Вид»-«Настройка»-«Символы»), задержка автовыполнения должна быть выключена (равна 0). Разумеется, вывод на дисплей можно комбинировать с задачами из других разделов. Перед началом работы студенту рекомендуется повторить раздел 2.4 и Приложение 1 «Методических указаний». 1. Дан массив байтов, заполненный одноразрядными десятичными числами. Пользу- ясь прямой записью в видеопамять в текстовом режиме, вывести массив на экран зелёными буквами на красном фоне. 2. Дан такой же массив, как в предыдущей задаче. Вывести его на экран аналогичным образом, но на белом фоне. Четные элементы выводить красным цветом, нечетные – зелёным цветом. 3. Дано слово на русском языке. Выдать на дисплей: согласные - белым цветом, глас- ные - красным. Фон оставить чёрным. 4. Дана строка символов. Выдать на дисплей с циклическим перебором цветов в пре- делах от 9 до 14 на чёрном фоне: первый символ выводится цветом 9, второй - 10, …, шестой - 14, седьмой - опять 9 и так далее. 5. Дан массив байтов. Построить диаграмму (горизонтальные столбцы) из символов с кодом 219 (0DBh) на чёрном фоне. В каждом байте: младшие четыре разряда - цвет столбца, старшие - длина столбца. 6. Написать программу, изображающую на виртуальном дисплее государственный флаг России из трёх полос (коды и порядок цветов сверху вниз: 15-белый, 9-синий, 12-красный). Каждую полосу составить из пяти символов с кодом 219 (0DBh). Фон изображения оставить чёрным. 7. Дан байт (возможен ввод из порта 2 или 3). Получить его представление на вирту- альном дисплее в шестнадцатеричном виде с добавлением буквы ‘h’ в конце. 8. Дан байт (возможен ввод из порта 2 или 3). Получить его представление на вирту- альном дисплее в двоичном виде с добавлением буквы ‘b’ в конце. 9. Написать подпрограмму (процедуру) для вывода произвольной строки текста, нахо- дящейся в оперативной памяти, на виртуальный дисплей. Подпрограмма должна быть объявлена с помощью директив PROC и ENDP, вызываться командой CALL и возвращать управление в вызвавшую программу по команде RET. Подпрограмма должна получать цветовой атрибут в регистре AL, указатель на строку - в регистре BX, координаты X и Y первого символа выводимой строки - в регистрах DH и DL. Перед началом работы внимательно изучите пример программы из Приложения 2 «Методических указаний».
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »