С помощью Ассемблера выполнить следующие задания, используя прерывания 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 с.
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 с.
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 с.