АННОТАЦИЯ
Данная курсовая работа представляет собой приложение, обеспечивающее генерацию звука с помощью системного таймера.
Так как в настоящее время воспроизведение звука происходит посредством звуковых плат, обычный динамик PC практически никем не используется, поэтому главное его применение – звуковое сопровождение при выдаче сообщений об ошибках.
1. ИССЛЕДОВАТЕЛЬСКАЯ ЧАСТЬ
1.1 Исследование предметной области и постановка задачи
Целью данной курсовой работы является разработка приложения, которое может генерировать звук, используя системный таймер.
Для достижения данной цели необходимо реализовать ряд задач, а именно:
- изучить принцип работы системного таймера
- разработать алгоритмы для перехвата и обработки прерываний системного таймера
- создать процедуру для извлечения очередного звука
- создать процедуру для обработки символов, введенных с клавиатуры
1.2 Общие сведения о языке
Язык ассемблера - это символическое представление машинного языка. Все процессы в машине на самом низком, аппаратном уровне приводятся в действие только командами (инструкциями) машинного языка. Отсюда понятно, что, несмотря на общее название, язык ассемблера для каждого типа компьютера свой. Это касается и внешнего вида программ, написанных на ассемблере, и идей, отражением которых этот язык является.
Язык ассемблера был создан для облегчения написания программ на низком уровне. Вместо машинных команд программист использует мнемоники, которые представляют собой символическое представление машинной команды (или нескольких команд), что облегчает чтение текста программы. Так как одна мнемоника при трансляции преобразовывается в минимальное количество команд, то программы, написанные на ассемблере, выполняются с максимально возможной скоростью и занимают минимальный объём памяти. Именно поэтому программы на ассемблере (или ассемблерные вставки) используются там, где быстродействие является наиболее критичным фактором (обработка компьютерной графики, ядро операционных систем), или требуется максимально полно использовать возможности операционной системы (вирусы и антивирусы), или там, где эти два качества являются одинаково важными (драйверы различных устройств). Хорошим качеством Ассемблера является то, что он позволяет управлять действиями процессора поэтапно (по операциям) и с максимальной эффективностью. Ассемблер предоставляет программисту полную свободу действий при разработке программы, что одновременно является и его достоинством, и недостатком, так как требует от разработчика знания системы команд данного компьютера и его операционной системы. Данный язык позволяет программисту непосредственно работать со всем аппаратным обеспечением, что особенно важно при программировании устройств - ввода-вывода, где требуется контроль над отдельными разрядами регистров устройства. Ассемблер предоставляет возможность создания компактных и быстродействующих программ, оптимизации работы с аппаратными средствами. Синтаксис инструкций процессора предоставляет программисту широкий выбор типов данных: целые числа, строки знаков, упакованные десятичные числа, числа с плавающей точкой, структуры и записи. ............