HTML document for the World Wide Web
Введение
Программисты, использующие операционную систему MS-DOS, часто
вынуждены работать с различными устройствами компьютера на уровне
команд ввода/вывода. Это связано прежде всего с тем, что MS-DOS
не содержит сколько-нибудь существенной поддержки для большинства
устройств компьютера. Практически функционально полная поддержка
обеспечивается только для дисковой подсистемы. Такие устройства,
как мышь, принтер, расширенная и дополнительная память и часы
реального времени обслуживаются либо отдельными драйверами, либо
программа вынуждена обращаться непосредственно к портам ввода/вывода
этих устройств.
Для оптимального решения графических и вычислительных задач актуально
использование арифметического сопроцессора 8087/80287/80387. Мы
рассмотрим сопроцессор с точки зрения программиста - опишем форматы
используемых данных, рассмотрим внутренние регистры сопроцессора
и систему команд.
Данная книга содержит информацию об использовании драйверов и
портов ввода/вывода некоторых устройств компьютера и поможет вам
составлять эффективно работающие программы, использующие все особенности
аппаратуры.
Описаны следующие устройства:
- клавиатура;
- мышь;
- часы реального времени;
- таймер;
- порт последовательной передачи данных (асинхронный адаптер);
- порт параллельной передачи данных и принтер;
- контроллер прямого доступа к памяти;
- контроллер прерываний;
- расширенная и дополнительная память;
- арифметический сопроцессор.
Глава 1 описывает основные способы определения конфигурации персонального
компьютера. В книге 3 первого тома мы уже занимались определением
конфигурации дисковой подсистемы. В этом томе будет рассказано
о способах определения конфигурации других подсистем и, в частности,
о способе определения типа центрального процессора.
Глава 2 посвящена клавиатуре. В ней рассказывается о том, как
работает клавиатура, подробно описываются различные способы программирования
клавиатуры - от использования портов ввода/вывода до средств операционной
системы MS-DOS и стандартных библиотек трансляторов Microsoft
QC 2.5 и C 6.0.
Глава 3 рассказывает об устройстве, принципе работы и программировании
мыши - одного из наиболее распространенных устройств ввода для
персонального компьютера. Приводятся многочисленные примеры программ
для работы с мышью.
В главе 4 описаны часы реального времени, получающие питание от
аккумулятора. Пользуясь сведениями, приведенными в этой главе,
вы сможете не только определять или устанавливать дату и время,
но и запускать периодические процессы, запускать процессы в определенные
моменты времени. Последнее возможно при использовании режима "будильник".
Глава 5 расскажет вам о системном таймере. Вы научитесь программировать
это устройство, играть с его помощью простейшие музыкальные мелодии,
узнаете, как реализовать с помощью таймера генератор случайных
чисел. Будет рассказано о способах формирования задержек в работе
программы, длительность которых не зависит от производительности
центрального процессора.
В главе 6 описан порт последовательной передачи данных и приведены
все необходимые сведения для его использования (включая разводку
разъемов).
В главе 7 описан порт параллельной передачи данных. Так как к
этому порту обычно подключается принтер, то мы приведем сведения
об использовании и программировании принтеров (матричных). Иногда
порт параллельной передачи данных используют для управления каким-либо
оборудованием, например, аналого-цифровым преобразователем. Пользуясь
приведенными сведениями, вы сможете приспособить свой компьютер
для управления такими внешними устройствами, не приобретая специальные
интерфейсные адаптеры. В приложении приведена таблица команд для
наиболее распространенных 9-игольчатых и 24-игольчатых принтеров
Epson.
Глава 8 содержит сведения о программировании канала прямого доступа
к памяти. Прямой доступ к памяти используется для организации
быстрого ввода/вывода данных и всегда применяется для организации
работы с дисками.
Глава 9 посвящена программированию контроллера прерываний. Известно,
что обслуживание медленно работающих устройств ввода/вывода целесообразно
выполнять с использованием механизма прерываний. Приведенная в
главе 9 информация позволить вам самостоятельно программировать
контроллер прерываний и вообще эффективно использовать прерывания
в своих программах.
В главах 10 и 11 мы расскажем вам об использовании расширенной
и дополнительной (Extended и Expanded) памяти компьютера. Вы сможете
преодолеть барьер 640 К, установленный для MS-DOS реальным режимом
работы процессора.
Глава 12 посвящена арифметическому сопроцессору. В настоящее время
это устройство имеется практически в любом компьютере (за исключением,
возможно, самых дешевых конфигураций IBM PC/XT). Арифметический
сопроцессор значительно ускоряет выполнение расчетных и графических
задач. Некоторые программные продукты (например, Autocad версий
10.0 и более поздних версий) просто отказываются работать на компьютере,
не оснащенном сопроцессором.
|