Использование средств BIOS на языке Ассемблер
С помощью Ассемблера выполнить следующие задания, используя прерывания BIOS int 10h и int 16h.
№ | ЗАДАНИЕ |
Ввести символьный массив, отсортировать и вывести на экран. | |
Ввести символьный массив, и вывести на экран встречающиеся в нем буквы по алф. | |
Ввести символьный массив, и вывести на экран отдельно гласные и согласные по алфавиту | |
Ввести символьный массив, и вывести на экран отдельно гласные и согласные в том порядке, как они встречаются. | |
Ввести символьный массив, и вывести на экран буквы в порядке убывания частоты встречаемости. | |
Ввести символьный массив, и вывести на экран, и вывести его в обратном порядке. | |
Ввести символьный массив, и вывести на экран буквы в порядке возрастания частоты встречаемости. | |
Ввести символьный массив, и вывести на экран его анаграмму (перемешать буквы). | |
Ввести символьный массив, и вывести на экран по словам, выводя каждое слово разным цветом. | |
Ввести символьный массив, и вывести на экран содержащиеся в нем слова в столбик. | |
В графическом режиме нарисовать замкнутый многоугольник, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать произвольную кривую, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать множество пикселов на экране, пользуясь курсорными клавишами. | |
В графическом режиме заполнить экран произвольными символами, пользуясь курсорными клавишами. | |
В графическом режиме отредактировать содержимое экрана, вставляя или стирая пиксели и пользуясь курсорными клавишами. | |
В графическом режиме нарисовать геометрическую фигуру и вывести надпись, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать схематическое изображение кошки, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать схематическое изображение дерева, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать схематическое изображение домика, пользуясь курсорными клавишами. | |
В графическом режиме нарисовать схематическое изображение самого себя, пользуясь курсорными клавишами. |
Краткие сведения о прерываниях BIOS
Перед вызовом соответствующей функции необходимо занести передаваемые ей параметры в требуемые регистры. В частности, код функции заносится в регистр AH, а код подфункции – в регистр AL.Результат выполнения функции также заносится в регистры. Например, чтобы поместить код символа, вводимого с клавиатуры, в переменные scancodиasciicod,необходимо задать в регистре AHкод функции 00, выполнить команду прерывания INTс параметром 16h,а затем извлечь информацию из регистров AH(скен-код символа)и AL(ascii-код символа), и перемеcтить их в память для переменных :
……………………………………………………………………………………………………
Mov ah,0
Int 16h
Mov scancod,ah
Mov asciicod,al
……………………………………………………………………………………………………
Опишем сразу остальные функции прерывания 16h:
Функция 01h.Получение состояния клавиатуры.Возвращает состояние буфера без извлечения из него символа.
Вход: AH=01h.
Выход: если буфер пуст, флаг ZF=1;
если в буфере есть ожидающие символы, то ZF=0, а скен- и ascii- коды символа находятся в регистрах ALиAH, как и для функции 00.
Функция 01h.Получение флагов клавиатуры.Возвращает байт состояния управляющих клавиш.
Вход: AH=02h.
Выход: AL=флаги. Биты байта флагов имеют следующие значения:
0 – нажата левая клавиша Shift
1 – нажата правая клавиша Shift
2 – нажата клавиша Ctrl
3 – нажата клавиша ALT
4 – включён режим Scroll Lock
5 – включён режим Num Lock
6 – включён режим Caps Lock
7 – включён режим Insert
Функции прерывания 10h (функции видеорежимов).
Функция 00h. Установка видеорежима.
Вход: AH=00h
AL=видеорежим.
03h– текстовый, 80x25, 16 цветов
12h –графический, 640х480, 16 цветов (VGA)
12h –графический, 320х200, 256 цветов (VGA)
Функция 02h.Установка позиции курсора.
Данная функция работает как в текстовом, так и в графическом режимах. Однако, в графическом режиме курсор не виден.
Вход: AH=02h
BH=номер видеостраницы (0–3)
DH=номер видеостроки (строки в текстовом режиме нумеру-
ются снизу вверх от 1, строки в графическом режиме нумеруются
сверху вниз от 0.)
DL=номер видеостолбца
Функция 09h.Запись символа и атрибута в позицию курсора.
Данная функция также работает как в текстовом, так и в графическом режимах.
Вход: AH=09h
AL=символ
BH=номер видеостраницы
BL=атрибут (текстовый режим), или цвет (графический реж.)
CX=коэффициент повторения
В текстовом режиме каждый символ, выводимый на экран, задаётся двумя байтами: байтом кода и байтом атрибута. Байт атрибута содержит информацию о цвете и яркости фона и символа в виде irgbIRGB, где irgb – биты яркости, красного, зелёного и синего цветов для фона, а IRGB соответственно – для символа. В графическом режиме код цвета представляет номер цветового регистра палитры, в котором содержится подробная информация по воспроизведению заданного цвета.
Функция 09h. Запись пиксела в заданную графическую позицию.
Вход: AH=0ch
AL=цвет
BH=номер видеостраницы
CX=графический столбец
DX=графическая строка
ПриложениЕ
Государственный стандарт дисциплины “Вычислительные системы, сети и телекоммуникации”
ОПД.Ф.01 | ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ, СЕТИ И ТЕЛЕКОММУНИКАЦИИ Физические основы вычислительных процессов. Основы построения и функционирования вычислительных машин: общие принципы построения и архитектуры вычислительных машин, информационно-логические основы вычислительных машин, их функциональная и структурная организация, память, процессоры, каналы и интерфейсы ввода вывода, периферийные устройства, режим работы, программное обеспечение. Архитектурные особенности и организация функционирования вычислительных машин различных классов: многомашинные и многопроцессорные вычислительные системы, типовые вычислительные структуры и программное обеспечение, режимы работы. Классификация и архитектура вычислительных сетей, техническое, информационное и программное обеспечение сетей, структура и организация функционирования сетей (глобальных, региональных, локальных). Структура и характеристики систем телекоммуникаций: коммутация и маршрутизация телекоммуникационных систем, цифровые сети связи, электронная почта. Эффективность функционирования вычислительных машин, систем и сетей телекоммуникаций; пути ее повышения. Перспективы развития вычислительных средств. Технические средства человеко-машинного интерфейса. |
ЛИТЕРАТУРА
1. Вычислительные системы, сети и телекоммуникации. Учебник/А.П.Пятибратов, Л.П.Гудыно, А.А.Кириченко: под ред.
П. Пятибратова. - М.: Финансы и статистика, 2001. 509 с.
2. Бройдо В.Л. Вычислительные системы, сети и телекоммуникации. СПб Питер, 2003. 688 с.
3. А.В. Гордеев, А.Ю. Молчанов. Системное программное обеспечение.
СПб, Питер, 2001.
4. Гук Михаил. Аппаратные средства IBM PC. Энциклопедия, 2-е изд. –СПб.: Питер, 2002. – 928 с.: ил.
5. Дейтел Х. Введение в операционные системы: Пер. с англ. М.: Мир, 1987. т.1. 359с.,
т.2. 398с.
6. Дьяконов В. MathCAD 2000: учебный курс. – СПб.: Питер, 2001. – 592 с.
7. Иртегов Д. Введение в операционн7ые системы. СПб:«БХВ-Петербург», 2002.
8. Лорин Х., Дейтел Г. Операционные системы: Пер. с англ. М.: Мир, 1984.–392 с., ил.
9. Пустоваров В.И. Ассемблер: программирование и анализ корректности машинных программ. «Ирина», BHV, Киев, 2000. 480 с
10. Финогенов К.Г. Самоучитель по системным функциям MS DOS. М.: Радио и связь, Энтроп, 1995. – 382 с.,ил.
11. Юров В. Ассемблер. Учебник. СПб.:Питер, 2001. 624 с.: ил.
12. Бэкон Дж, Харрис Т. Операционные системы. Параллельные и распределенные системы. СПб, Питер, Киев, 2004.
13. Ватолин А., Ратушняк А., Смирнов М., Юкин В.. Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео. – М.: ДИАЛОГ–МИФИ, 2002.–384 с.
14. Гурский Ю.А., Васильев А.В. Photoshop CS. Трюки и эффекты. – СПб.: Питер – 2005. – 555 с.: ил.
15. Джермейн К. Программирование на IBM/360: Пер. с англ. М.: Мир, 1978.–870 с., ил.
16. Кейлингерт П. Элементы операционных систем. Введение для пользователей: Пер. с англ. М. Мир, 1985. 295с.
17. Кейслер С. Проектирование операционных систем для малых ЭВМ.: Пер. с англ.–М.: Мир, 1986.– 680 с., ил.
18. Лэй Р. И «Уэйт-Груп». Написание драйверов для MS/DOS. : Пер. с англ. М.: Мир, 1995.–527 с., ил.
19. Майерс Г. Архитектура современных ЭВМ: В 2-х кн. : Пер. с англ. М.: Мир, 1985. кн. 1 – 364 с., ил.; кн. 2 – 312 с., ил.
20. Мэдник С., Донован Дж. Операционные системы: Пер. с англ. М.:Мир, 1987. 792 с.
21. В.Г. Олифер, Н.А. Олифер. Компьютерные сети. Принципы, технологии, протоколы. . СПб, Питер, 2004.
22. Трасковский А.В. BIOS. – СПб.: БХВ-Петербург, 2004. – 544 с. ил.
23. Харт Джонсон М. Системное программирование в среде Win32, 2-е изд. : Пер. с англ. М.: Издательский дом «Вильямс», 2001. – 464 с.: ил.
- Шоу А. Логическое проектирование операционных систем: Пер. с англ. М.: Мир, 1982.
- http://chernykh.net/content/view/601/800/
- http://ru.wikipedia.org/wiki/Виртуальная_память
- http://ru.wikipedia.org/wiki/Кеш-память
- Самарин В.В., Речнов А.В., Смирнова Т.Н., Мерлина Н.И. Высокоуровневые методы информатики и программирования: Автоматизированная математическая система Mathcad: Чебоксары, 2002.76 с.
- Глушков С.В., Мельников В.В. Сурядный А.С. Программирование в среде Windows. Учебный курс. Харьков. Фолио; М.: ООО “Изд-во АСТ”. 2001. 487 c.
- Левин А. Транзистор – дитя многих родителей. Компьютера, 2005, №45. c.72
- CERN Courier, 2005, V. 45, №3.
- Компьютера, 2006, №3.
- Деникин А.С., Загребаев В.И., Самарин В.В., Алексеев А.П., Кожин Ф.Ю. Сетевая база знаний по низкоэнергетической ядерной физике.// Труды Всеросс. научн. конф. “Научный сервис в сети Интернет” (Новороссийск, сент. 2003 г.),- М.: Изд-во Моск. ун-та, 2003, с. 14.
- Тим О’Рейли. Что такое Веб 2.0. Компьютера 2005, №37, с. 60, № 38, с. 58.
- Э.Хеллвег. Что ждет нас в 2006 г. Мир ПК, 2006, №1, с. 8
- CERN Courer 2005, V. 45, № 7, p. 19
- H&S 2005, №12, с. 10,11
- CERN Courer 2005, V. 45, № 5, p. 18
- CERN Courer 2005, V. 45, № 5, p. 18.
- Курс общей физики: Квантовая оптика. Атомная физика. Физика твердого тела. Физика атомного ядра и элементарных частиц, Кн. 5 2002 В3 С12
- Робертсон Б. Современная физика в прикладных науках М.: Мир, 1985. 272 с.
- Александров В.А., Загребаев В.И., Самарин В.В., Филиппов Г.М. Ядерная физика. Лабораторный практикум. Чебоксары, изд-во ЧГУ, 1998.
- Китель. Ч. Введение в физику твердого тела. М.: Мир, 1978, 791 с.
- Физическая энциклопедия.. Т.4. М.: Научное издательство “Большая российская энциклопедия”, 1994.
- Эндерлайн Р. Микроэлектроника для всех. - М.: Мир, 1989, 190 с.
- Мнеян М.Г. Физические принципы работы ЭВМ.- М.: Просвещение, 1987, 192 с.
- Карабуто А. Как делают микросхемы. Компьютера. Компьютерный еженедельник. 6.10.2004, № 561, http://www.computerra.ru/offline/2004/561/36071/.
- Под одной крышкой. Знакомство с процессором AMD Athlon 64 X2. Upgrade 2005, № 30, с 18.
- Upgrade, 2005 №6.
- H&S 2005, №12, с. 66.
- А.Самардак. Спинтроника: от “микро” к “нано”.Компьютерра, 2006, №5, с. 48.
- Д. Румянцев, Что такое техпроцесс. Технология создания процессоров и микросхем. Upgrade, 2004, №36, c.18.
- Ю.Романов. Зеленоград или Зеленополис?, с. 26. “Микрон”. Ставка на силу.Компьютерра, 2005, №43, с. 24.
- С.Озеров Ячейка, она же клетка, она же… Cell. Компьютера, 2005, №38, с. 38.
- Компьютера, 2006, №4, с. 9.
- Компьютера, 2006, №7, с. 3.
- Компьютера, 2006, №3, с. 6.
- С.Озеров “64”.Компьютерра 2005 №41 с. 22.
- H&S 2005, №12, с. 65.
- Набережный А. AMD Athlon 64 FX-60: пока он лучший. Мир ПК. 2006 , №1, с.20.
- Меркулов Д. Магия жидких кристаллов. Наука и жизнь, 2004, №12, с. 126.
- Л.Музыковский, Почему 20? Домашний компьютер 2006, №1, с. 40.
- А.Дмитриев 17-дюймовые ЖК-мониторы для офиса, Мир ПК, 2005, №11 с.44.
- С.Андрианов Выбираем ЖК-монитор. Мир ПК, 2005, №11 с.106.
- Чепурной В. Устройства хранения информации.- СПб, “BHV-Санкт-Петербург”, 1998. 208 с.
- H&S 2005, № 12, с.24.
- Рыбаков М. Вдоль и поперек жесткого диска.Hard и Soft 2005, №12, с. 12.
- Домашний компьютер, 2006, №2 с.16.
- H&S 2005, №12, с. 54.
- Физическая энциклопедия. Т.1. М.: Научное издательство “Большая российская энциклопедия”, 1994. с.508.
- М.Рыбаков Данные в трех измерениях H&S 2005, № 12, с. 76.
- Д. Зарубов, Суперпарамагнитный беспредел-2. Upgrade, 2005, №19, c.24.
- Компьютерра 2005 №41 с. 6.
- Королев Л.Н. Микропроцессоры, микро- и мини-ЭВМ.-М: Изд-во Моск. Ун-та. 1988, 212 с.
- Гусева О.Л.// Информатика и образование, 2001, №3, с. 77, №4, с. 83.
- Немнюгин С. Параллельное программирование для многопроцессорных вычислительных систем. /Немнюгин С., Стесик О. – С-Пб: “БХВ-Петербург”, 2002, 396 с.
- М.Дьяков Путешествие по системной плате. Hard&Soft, 2005, №10, c. 70.
- С.Озеров. Ремонт компьютера своими руками. Компьютера, 2006, № 4, , с.20.
- Создайте свой ПК заново. Мир ПК, 2005, № 11. с. 120– перевод Jim Aspinwall Reinvent PC. PC World, август 2005, С. 68.
- А.Баулин, Где хранить два терабайта. Мир ПК, 2005, №11, с.60.
- Е.Яворских, Компьютер из ниоткуда. Домашний компьютер, 2006, №1, с. 58.
- Компьютера, 2006, № 3, с. 11.
- Пильщиков В.Н. Программирование на языке ассемблера IBM PC. М.: Диалог-МИФИ, 2000, 286 с.
- Юров В. Assembler: практикум– СПб: Питер, 2000. - 448 с.
- Жуков А., Авдюхин А. Ассемблер.-СПб: БХВ-Петербург, 2002, 448 с.
- Белецкий Я. Энциклопедия языка Си. М.: Мир, 1992, 686 с.
- Подбельский В.В. Программирование на языке Си. - М.: ФиС, 2000, 360 с.
- Трофимов С.А. CASE-технологии: практическая работа в Rational Rose. – М.: Бином-Пресс, 2002 г. – 228 с.
- Введение в программирование /Сост. Гольденберг/ М. ООО Харвест, 1997, 528 с.
- Павловская Т.А. С/С++. Программирование на языке высокого уровня - СПб: Питер, 2004. - 461 с.
- Секунов Н. Самоучитель Visual C++ 6. - СПб: БХВ-Петербург, 2004, 960 с.
- С.Озеров. Архитектура CPU Компьютерра 2005№ 37 с. 24.
- С.Озеров. Параллельное программирование. Компьютера, 2005, № 44, с. 46.
- Компьютеры и Оргтехника, 2006, № 1, с.3 www.cdrinfo.com.
- Компьютерра 2005. № 41 с.4.
- С.Озеров. Параллельные вычисления: кластеры. Компьютера, 2005, № 46, с. 46.
Учебное издание