- •Лабораторная работа № 1.
- •Функция 0ен
- •Функция 1ан
- •Функция 2fh
- •Функция 36н Определяет параметры диска
- •Функция 39н
- •Функция 3ан Удаляет каталог с диска
- •Функция 3вн Меняет текущий каталог на заданный
- •Функция 3сн Создаёт хендл (новый файл) на диске
- •Функция 3dн Открывает хендл (открывает файл) на диске
- •Функция 3ен
- •Функция 3fh
- •Функция 40н
- •Функция 41н
- •Функция 42н
- •Функция 43h
- •Функция 47н
- •Функция 4ен
- •Функция 4fh
- •Функция 56н
- •Функция 57н
- •Функция 5ан
- •Прерывание 25н
- •Прерывание 26н
- •Пример выполнения работы Создать новую директорию new_dir на диске а:, сделать ее текущей, записать туда файл newfile.Txt и в него записать сообщение - "Это вновь созданный файл".
- •Порядок выполнения работы
- •Вопросы по теме работы
- •Лабораторная работа № 2
- •Функция 00н
- •Функция 01н
- •Функция 02н
- •Функция 03н
- •Функция 04н
- •Флаг переноса установлен
- •Функция 05н
- •Пример выполнения работы
- •Порядок выполнения работы
- •Варианты заданий. Не использовать функции dos !!!.
- •Вопросы по теме работы.
- •Приложение а. Функция disk_status
- •Приложение в. Параметры 360к дискеты.
- •Лабораторная работа № 3
- •Основные сведения
- •Функция Назначение
- •Функция 00н
- •Функция 01h
- •Функция 02h
- •Функция 03h
- •Пример выполнение работы
- •Контрольные вопросы
- •Лабораторная работа № 4
- •Основные сведения
- •Функция 00h
- •Функция 01h
- •Функция 02h
- •Система команд матричного принтера
- •Система команд принтера фирмы Epson.
- •Команды форматирования текста
- •Команды печати графических изображений.
- •Пример выполнения работы.
- •Порядок выполнения работы
- •Варианты заданий.
- •Контрольные вопросы
- •Лабораторная работа № 5 Таймер и генерация звука.
- •Форматы управляющих команд таймера.
- •Использование каналов в ibm pc.
- •Генерация звука.
- •Частоты нот для второй октавы
- •Варианты заданий.
- •Вопросы по теме работы.
- •Лабораторная работа № 6 Работа с драйвером мыши.
- •Обращение к драйверу мыши из ассемблера
- •Функции драйвера мыши.
- •Функция 00h
- •Показать курсор
- •Функция 06н
- •Функция 07h
- •Функция 08h
- •Функция 09h
- •Функция 0Ah
- •Функция 0Bh
- •Функция 0Сh
- •Функция 0Dh
- •Функция 0Eh
- •Функция 0Fh
- •Функция 10h
- •Функция 13h
- •Функция 15h
- •Функция 16h
- •Функция 17h
- •Функция 18h
- •Программирование с использованием драйвера мыши.
- •Пример выполнения работы.
Частоты нот для второй октавы
До - 262 Гц Фа-диез - 370 Гц
До-диез - 277 Гц Соль - 392 Гц
Ре - 294 Гц Соль-диез - 415 Гц
Ре-диез - 311 Гц Ля - 440 Гц
Ми - 330 Гц Ля-диез - 466 Гц
Фа - 349 Гц Си - 494 Гц
Повышение или понижение частоты на октаву происходит, соответственно, умножением или делением частот второй октавы на 2.
Варианты заданий.
1. В произвольной позиции экрана, выводятся цифры 0,1,...,F с интервалом 4 секунды между выводом очередной цифры. При нажатии клавиши происходит ускорение этого процесса в 2 раз путем перепрограммирования канала 0 таймера. При следующем нажатии происходит еще одно ускорение в 2 раза и т.д. После завершения работы программа должна восстанавливать значение счетчика канала 0.
2. Написать программу, которая читает символьную строку специального вида и проигрывает ее как мелодию. Строка состоит из следующих элементов:
буквы, обозначающие ноты, ">" (повышение) или "<" (понижение) октавы, "1" и следующей за ним цифрой (от 0 до 9)-задает длительность ноты, "p"-пауза, аналогично длительности.
3. Написать программу, генерирующую определенную частоту звучания, зависящую от нажатия клавиш на клавиатуре. Клавиатура должна содержать не менее двух октав звуков.
4. Написать программу, перепрограммирующую частоту регенерации памяти на 2-3 единицы в сторону увеличения и уменьшения, и вычислить скорость работы процессора при каждом изменении.
5. Написать программу, генерирующую звук путем программирования канала 2 таймера. Этот звук модулируется (смешивается с) сигналом, генерируемым переключением бита 1 порта 61h (обычно имеющим более низкую частоту). Уменьшение или увеличение частоты генераторов в 2 раза производится нажатием соответствующих клавиш.
6. Написать программу, генерирующую звук переключением бита 1 порта 61h так, чтобы звучало трезвучие до-ми-соль.
7. Написать программу, определяющую скорость выполнения трех операций: сложение и вычитание двух слов, находящихся в регистрах, и умножения двух слов. Скорость определить путем фиксации и чтения счетчика канала 0. Результаты вывести на экран.
8. Написать игровую программу, которая перед началом игры произвольно устанавливает невидимую на экране метку и видимый символ "*", который перемещается по экрану с помощью стрелок. При движении символа генерируются звуковые колебания, частота которых зависит от расстояния до невидимой метки. Если метка не найдена за 4 секунды, метка перемещается в другую точку.
Вопросы по теме работы.
1. Нарисуйте схему взаимодействия регистров канала 1 таймера.
2. Как работает режим 2 таймера.
3. Как работает режим 3 таймера.
4. Какую информацию можно получить из слова состояния канала.
5. Какую величину необходимо записать в счетчик канала 2, чтобы получить частоту звука равную 1000 герц.
6. Как записать значение в счетчик канала 2 таймера.
7. Как запретить работу динамика.