
- •В.Б. Синицина
- •Содержание
- •5 Цели и задачи дисциплины
- •6 Самостоятельная работа студентов
- •6.1 График выполнения и сдачи заданий срс и срсп по дисциплине
- •6.2 Темы докладов
- •7 Вопросы рубежных контролей
- •8 Вопросы для подготовки к итоговой форме контроля
- •9 Информация по оценке знаний
- •10 Политика и процедуры изучения курса
- •11 Список рекомендуемой литературы
- •Тезисы лекционных занятий
- •Тема 1: архитектура эвм. Режимы работы микропроцессора
- •Тема 2: организация памяти. Разработка простой программы на ассемблере
- •Тема 3: синтаксис ассемблера. Формат команд
- •Тема 4: описание простых типов данных ассемблера. Режимы адресации. Директивы сегментации.
- •Тема 5: команды обмена данными
- •Тема 6: команды передачи управления
- •Тема 7: арифметические команды
- •Тема 8: цепочечные команды
- •Тема 9: логические команды
- •Тема 10: работа с файлами, каталогами и дисками
- •Тема 11: ввод информации с клавиатуры терминала
- •Тема 12: вывод текстовой информации на экран терминала
- •Тема 13: вывод графической информации на экран терминала
- •Тема 14: управление памятью и процессами
- •Тема 15: резидентные программы
- •Тема 16: Начала программирования для Windows.
- •Тестовые задания по дисциплине
Тема 13: вывод графической информации на экран терминала
Цель: изучить графические возможности видеодрайвера BIOS, познакомиться с принципом работы адаптера EGA и его прямым программным управлением.
План:
1. Графические возможности видеодрайвера BIOS.
2. Адаптер EGA и его прямое программное управление.
1. Графические возможности видеодрайвера BIOS.
Графический адаптер EGA обеспечивает хранение и отображение двух графических страниц с разрешением 640x350 цветных точек (пикселов). Адаптер поддерживает шестьдесят четыре цвета, хотя в каждый момент времени изображение на экране может содержать только шестнадцать цветов. Этот набор из шестнадцати цветов, выводимых на экран (цветовая палитра), задается программно и может легко изменяться. При загрузке машины устанавливается стандартная палитра.
Фоновый цвет всего экрана может принимать любое из шестнадцати текущих значений палитры, причем на обеих страницах фон изменяется одновременно. Под фоном понимается совокупность всех еще не покрашенных точек. Однако сменить цвет фона можно.
Помимо произвольных изображений, рисуемых пиксел за пикселом, на экране в графическом режиме можно отображать и текстовую информацию, используя любые функции DOS и BIOS, выводящие на экран символьные строки. Для позиционирования строк на экране можно использовать функцию 02h драйвера BIOS (прерывание Int 10h), устанавливающую местоположение курсора в текстовых координатах (номер строки, от 0 до 24 и номер столбца от 0 до 79), хотя сам курсор в графическом режиме на экран не выводится. Символы, выводимые на экран в графическом режиме, попадают в точности в те же места, что и в текстовом. Нельзя также изменять их направление (т.е. выводить на экран вертикально или наклонно). Конфигурация символов берется из кодовых таблиц; при необходимости отображения символов другого размера или начертания, следует подготовить соответствующие кодовые таблицы или рисовать символы вручную.
2. Адаптер EGA и его прямое программное управление.
Графический адаптер EGA включает графический контроллер и буфер для хранения изображения (видеобуфер). Для программирования EGA используются свыше 10 портов, через которые осуществляется доступ к нескольким десяткам регистров контроллера. Методика программирования EGA видеорежима, который, в свою очередь, определяется характеристиками используемого монитора и объемом видеобуфера, располагающегося на плате адаптера.
Цвет каждой точки экрана (в виде номера цветового регистра, хранящего собственно код цвета) может принимать шестнадцать значений и требует, соответственно, четырех бит. Для их хранения весь видеобуфер разбивается на четыре "битовых плоскости", каждая из которых закреплена за одним битом четырехразрядного кода цвета. Все плоскости отображаются на одну и ту же область адресного пространства компьютера от A0000h до AFFFFh. Реально на каждой странице используются 28000 байт (640*350:8).
Задание на самостоятельное изучение:
Законспектировать в тетради теорию по данной теме.
Изучить функции прерывания DOS 21h для работы по выводу графической информации на экран, разобраться в их работе.
Выполнить эти программы.
Литература:
В. Юров, С. Хорошенко "Ассемблер". - С-П: "ПитерКом", 1999г. -374с.
В.Юров Assembler. Практикум. 2-е изд.- СПб.: Питер, 2004г. -610с.
В.Пирогов Ассемблер. Учебный курс. – 1-е изд. – СПб.: БХВ – Петербург, 2001г. – 173с.
С. В. Зубков "Ассемблер для DOS, Windows, Unix".- М: "ДМК", 1999г. – 40с.
Использование Turbo Assembler при разработке программ. - Киев: "Диалектика", 1995г. – 354с.