4257

Краткие сведения о программировании процедур работы с устройствами ввода-вывода

Реферат

Информатика, кибернетика и программирование

Краткие сведения о программировании процедур работы с устройствами ввода-вывода Процедуры ввода-вывода в ПК выполняются, как правило, по прерываниям. Состав и использование основных видов прерываний и служебных функций DOS прерывания 21Н Программиро...

Русский

2012-11-15

37.5 KB

4 чел.

Краткие сведения о программировании процедур работы с устройствами ввода-вывода

Процедуры ввода-вывода в ПК выполняются, как правило, по прерываниям. Состав и использование основных видов прерываний и служебных функций DOS прерывания 21Н

Программирование работы с дисплеем

Задание режимов работы и обмен данными с дисплеем можно выполнять при прерываниях BIOS типа 10Н, а вывод данных на дисплей — и при прерываниях DOS типа 21Н. Для уяснения отличий прерываний BIOS от прерываний DOS рассмотрим в качестве примера несколько функций видеопрерываний BIOS.

Видеооперации с прерыванием 10Н BIOS

Это прерывание обеспечивает выполнение 16 различных процедур работы с дисплеем (идентифицируются содержимым регистра АН). Приведем самые важные из них:

  1.  Перемещение курсора в заданную позицию: АН = 2. Координаты курсора (строка, столбец) предварительно засылаются, соответственно, в регистры DH, DL В регистре ВН указывается номер страницы буфера: по умолчанию и в графическом режиме ВН = 0.
  2.  Очистка экрана дисплея: АН = 6 и AL = 0 или АН = 7 и AL = 0.
  3.  Чтение символа, находящегося в текущей позиции курсора, и его атрибута (только для текстовых режимов): АН = 8. В регистре ВН указывается номер страницы буфера. Считанный символ возвращается в AL, а его атрибуты — в АН (атрибуты символа — это его характеристики: цвет, цвет фона, яркость, инвертирование, мигание и т. д.).
  4.  Установка видеорежима изображения (текстовый, графический, цветность, формат, разрешающая способность и т. п.): АН = 0. Видеорежим определяется содержимым регистра AL
  5.  Запись новых атрибутов символа и вывод символа в текущую позицию курсора: АН = 9. Прочие регистры должны содержать:

О AL — записываемый символ;

О BL — его атрибуты или цвет (в графическом режиме);

О ВН — номер видеостраницы;

О СХ — счетчик записываемых символов (число повторений символа).

  1.  Вывод символа в текущую позицию курсора: АН = 9 и BL = 0. Содержимое AL, ВН и СХ аналогично п. 5.
  2.  Чтение текущего видеостатуса: АН = OFh. Возвращает: в AL — текущий режим; в АН — число столбцов на экране; в ВН — активную страницу буфера.
  3.  Вывод строки символов: АН = 13h и AL = 0. Прочие регистры должны содержать: О ES:BP — указатель строки (ее начальный адрес в памяти);

О СХ — длину строки;

О DX — строку дисплея;

О ВН — номер страницы буфера.

Программирование работы с файлами

Файл — выделенная по какому-либо признаку поименованная совокупность информационных записей, хранящихся на диске. Каждой записи в пределах файла присваивается порядковый (тем самым уникальный) номер.

Запись идентифицируется своим адресом:

адрес_записи = имя_файла:номер_записи.

Файловая система поддерживает два типа доступа к записям файла:

последовательный метод доступа;

прямой метод доступа.

Механизм доступа к файлу и его записям при программировании также имеет два варианта:

доступ к файлу с использованием специальной таблицы — управляющего блока файла (FCB);

доступ к файлу по идентификатору (ASCIIZ) и логическому номеру.

Использование FCB для обращения к файлу позволяет реализовать и произвольный, и последовательный методы организации доступа, но часто оказывается довольно сложным, поэтому на практике, если не требуется выполнять детализированные процедуры с отдельными дорожками и секторами диска, чаще применяется обращение к файлу по идентификатору.

Прерывания, используемые при работе с файлами на дисках

- Прерывания BIOS:

О 13Н — обмен данными с жестким диском (при его отсутствии — с гибким диском);

О 40Н — обмен данными с гибким диском (если есть жесткий диск).

Эти прерывания обеспечивают выполнение многих функций, определяемых содержимым регистра АН и полезных при разработке вспомогательных программ и средств защиты от копирования, поскольку они позволяют выполнять операции с отдельными дорожками и секторами диска.

- Прерывание DOS 21H.

Имеется несколько десятков различных вариантов прерывания 21Н (определяемых содержимым регистра АН), реализующих так называемые универсальные функции управления файлами при наличии любых версий MS DOS (использующих при обращении к файлам FCB) и несколько десятков вариантов прерывания, предоставляющих так называемые расширенные функции управления файлами при наличии версии MS DOS 2.0 и выше (через строку ASCIIZ).

Далее обсуждаются лишь наиболее популярные варианты прерывания 21Н DOS, реализующие расширенные функции управления файлами.

При прерываниях этого типа файл полностью идентифицируется ASCIIZ-строкой, а после открытия файла — логическим номером, присваиваемым файлу при его создании и открытии (после закрытия файла его логический номер освобождается).

Вот сводка некоторых служебных функций DOS прерывания 21Н:

- АН = 3Ch — создание файла: формируются ASCIIZ-строка, идентифицирующая файл, и атрибут файла; вектор-адрес ASCIIZ-строки файла помещают в регистры DS:DX, в регистр СХ помещают атрибут файла; в регистре АХ возвращается логический номер файла.

- АН = 3Dh — открытие файла: вектор-адрес ASCIIZ-строки помещают в регистры DS:DX, в регистр AL записывается признак возможной работы с файлом (AL = 0 — файл открывается только для чтения, AL = 1 — только для записи, AL = 2 — и для чтения, и для записи); в регистре АХ возвращается логический номер файла.

- АН = 3Eh — закрытие файла (высвобождение его логического номера): логический номер помещают в регистр ВХ.

- АН = 3Fh — чтение из файла: в регистр ВХ помещают логический номер, в СХ — число считываемых байтов, в DS:DX — вектор-адрес буфера (поля ОЗУ), отведенного для записи считываемой информации; число фактически считанных байтов возвращается в регистре АХ.

- АН = 40h — запись в файл: в регистр ВХ помещают логический номер, в СХ — число записываемых байтов, в DS:DX — вектор-адрес буфера (поля ОЗУ), хранящего записываемую информацию; в АХ возвращается число фактически записанных байтов.

- АН = 41h — удаление файла: в регистры DS:DX заносится вектор-адрес ASCIIZ-строки файла.

- АН = 42h — установка указателя текущей записи в файле: в регистр ВХ заносится логический номер, в регистр AL — указание на базовую установку указателя текущей записи (AL в 0 — начало файла, AL - 1 — прежнее значение текущей записи, AL = 2 — конец файла), в регистры CX:DX — смещение указателя относительно базовой позиции (чаще всего 0); в регистрах DX:AX возвращается смещение текущей записи файла относительно начала файла.

- АН = 43h — установка новых атрибутов файла: в регистры DS:DX заносится адрес ASCIIZ-строки файла, в СХ — значения атрибутов, в AL находится «1» (если в AL — «0», то происходит чтение атрибутов, которые возвращаются в СХ).

- АН = 56h — переименование файла: в регистровой паре DS:DX указывается адрес ASCIIZ-строки со старым именем файла, в регистры ES:DI заносится адрес ASCIIZ-строки с новым именем файла.

Во всех перечисленных случаях при появлении ошибки в выполнении процедуры в регистре FL флаг CF устанавливается в «1»; код ошибки возвращается в регистре АХ.


 

А также другие работы, которые могут Вас заинтересовать

29659. Парадигмы, аномалии, кризисы, научные революции 71.5 KB
  Это было время господства ассоцианизма взаимопроникновения идей физиологической психологии и психологии сознания но также и время после выхода основополагающих трудов Г. Эббингауза 1850 1909 когда появилась надежда на разработку объективного метода исследования в области психологии. То есть для него в первую очередь неприемлема именно эта характеристика естественнонаучного познания путь выдвижения гипотез а не собственно экспериментальный метод как это иногда сегодня представляют сторонники описательной психологии функционирующей...
29660. Психология теоретическая и эмпирическая 243.5 KB
  Особая дисциплина описывающая и изучающая конкретные явления психической жизни в отличие от рациональной психологии выводящей явления из природы и сущности души. опытная школа в психологии соединила установку на эмпирическое наблюдение конкретный анализ и индуктивное познание психических явлений с учением об особой сущности этих явлений постигаемых только посредством самонаблюдения. Теоретическая психология Теоретическая психология наука предметом которой является саморефлексия психологии выявляющая и исследующая...
29661. Психология естественно-научная и гуманитарная 62.5 KB
  В первую очередь это отказ от культа эмпирических методов и связывания признака научности только с верифицируемостью знания т. Построение научного знания только на основе индуктивной логики неприемлемый для психологического наблюдения критерий построения теории против которого выступают сторонники гуманитарной парадигмы добавим что именно против этого выступал и К. Как мы показали ранее этот метод действительно с одной стороны предполагал построение психологического знания по классическому образцу науки Нового времени с его...
29662. Априорное знание, метафизика и объективность 49.5 KB
  Когда психолог обнаруживает статистически значимую связь между креативностью и рефлективностью как параметром когнитивного стиля {Дорфман Ковалева 2000а это не значит что чем выше креативность тем выше рефлективность у каждого человека в отдельности. некие общие представления об устройстве мира и человека. В свою очередь это предполагает что методы естественных наук которые изучают мироздание используются также при изучении психики и поведения человека. Культурноисторическая парадигма напротив подчеркивает своеобразие человека...
29663. Понятие категории как узлового пункта познания 57.5 KB
  В общей методологии понятие системы является чрезвычайно широким. Различают материальные системы Солнечная система среди них системы организм среда; идеальные системы например знаковые; социальные системы. Берталанфи Общая теория систем категория системы из философскометодологической перешла в иной статус названия объяснительного принципа конкретизируемого различным образом в научном познании. Кеннон утверждал принцип системности как принцип гомеостаза обеспечивающего динамическое постоянство свойств системы в ее...
29664. Категория активность 53 KB
  Леонтьев указывает на явления активности составляющие как бы внутреннюю предпосылку самодвижения деятельности и ее самовыражения [Леонтьев А. Поэтому описание явлений активности обычно ведется в терминах автономности спонтанности самопроизвольности инициативности и т. Однако любое проявление активности имеет место в некотором окружении. Невозможность роста активности без отражения а также не возможность отражения без активности самого отражающего объекта делает эти понятия изначально взаимосвязанными.
29665. Категории «взаимодействие» и «отражение» 56 KB
  Противоречия между указанными подходами можно разрешить и соединить различные аспекты в понимании отражения если определять его не как атрибут материи производный от другого атрибута взаимодействия а как самостоятельный аспект движения материи дополняющий взаимодействие проявляющийся во взаимодействии в свою очередь влияющий на ход взаимодействия и его результаты. Но какова природа этой особой способности к отражению почему она в разной степени присуща разным объектам и по каким законам она развивается Источником этой внутренней...
29666. Характеристика дескриптивной методологии 60.5 KB
  Декартовское представление о дуализме души и тела и понимание механистической детерминации как основы причинного объяснения породили тот тип рациональности который на долгие годы определил использование в психологии критериев научности взятых из парадигмы классической науки. Возникшие позже другие типы рациональности неклассические и постнеклассические еще только осваиваются в новых исследовательских парадигмах психологии. В рамках одной и той же исследовательской методологии оформлялись разные теоретические концепции научной психологии....
29667. Понятие методологии науки 71.5 KB
  Метод в широком смысле путь познания опирающийся на некоторую совокупность ранее полученных общих знаний принципов. Методология учение о методах и принципах познания. Можно выделить по крайней мере два понимания методологии развиваемых: 1 как представленное при рефлексии теории познания понимание метода в указанном широком смысле и 2 как учение о системе методов в узком смысле посредством которых в рамках той или иной науки в ходе теоретического или теоретикоэмпирического исследования проверяется правдоподобие или истинность...