Сист. прогр. Ч2 (Лекции по СПО), страница 6

2018-01-12СтудИзба

Описание файла

Файл "Сист. прогр. Ч2" внутри архива находится в следующих папках: Лекции по СПО, сис пр об. Документ из архива "Лекции по СПО", который расположен в категории "". Всё это находится в предмете "операционные системы" из 7 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "операционные системы" в общих файлах.

Онлайн просмотр документа "Сист. прогр. Ч2"

Текст 6 страницы из документа "Сист. прогр. Ч2"

INT 11H. Запрос списка присоединенного оборудования. Определяет наличие различных устройств в системе и результат помещает в регистр АХ. При включении компьютера система выполняет эту операцию и сохраняет содержимое АХ в памяти по адресу 410Н. Значения битов в регистре АХ:

Бит Устройство

15,14 Число подключенных принтеров.

13 Последовательный принтер.

12 Игровой адаптер.

11...9 Число последоват. адаптеров стыка RS232.

7,6 Число дискетных дисководов, при бите 0=1:

00=1, 01 = 2, 10=3 и 11=4.
5,4 Начальный видеорежим:

00 = не используется,

01 = 40x25 плюс цвет,

10 = 80x25 плюс цвет,

11 = 80x25 черно-белый режим.

1 Значение 1 говорит о наличии сопроцессора.
0 Значение 1 говорит о наличии одного или более

дисковых устройств, и загрузка операционной . системы должна осуществляться с диска.

INT 12Н. Запрос размера физической памяти. Возвращает в регистре АХ размер памяти в килобайтах, например 200Н соответствует памяти в 512 Кбайт. Данная операция полезна для проверки соответствия размера программы объему доступной памяти.

INT 13H Дисковые операции ввода-вывода. Обеспечивает операции ввода-вывода для дискет и винчестера.

INT 14H. Управление коммуникационным адаптером. Обеспечивает последовательный ввод-вывод через коммуникационный порт RS232. Регистр DX должен содержать номер (0 или 1) адаптера стыка RS232. Четыре типа операции, определяемые регистром АН, выполняют прием и передачу символов и возвращают в регистре АХ байт состояния коммуникационного порта.

INT 15H. Кассетные операции ввода-вывода и специальные функции для компьютеров AT. Обеспечивает операции ввода-вывода для кассетного магнитофона, а также дополнительные операции для компьютеров AT.

INT 16H. Ввод с клавиатуры. Обеспечивает три типа команд ввода с клавиатуры.

INT 17H. Вывод на принтер. Обеспечивает вывод данных на печатающее устройство.

IHT 18H. Обращение к среде БЕЙСИК, встроенной в ROM.

Вызывает интерпретатор с языка БЕЙСИК, находящийся в постоянной памяти ROM.

IHT 19H. Перезапуск системы. Данная операция при доступном диске считывает сектор 1 с дорожки 0 в область начальной загрузки в памяти (сегмент 0, смещение 7С00) и передает управление по этому адресу. Если дисковод недоступен, то операция передает управление через INT 18Н в среду БЕЙСИК. Данная операция не очищает экран и не инициализирует данные BIOS; ее можно использовать из программы.

INT 1AH. Запрос и установка текущего времени и даты. Считывает или записываем показание часов в соответствии со значением в регистре АН. Для определения продолжительности выполнения программы можно перед началом выполнения установить часы в 0, а после считать текущее время. Отсчет времени идет примерно 18,2 раза в секунду. Значение в регистре АН соответствует следующим операциям:

АН = 00. Запрос времени. В регистре СХ устанавливается старшая часть значения, а в регистре DX - младшая. Если после последнего запроса прошло 24 часа, то в регистре AL будет ненулевое значение.

АН = 01.Установка времени. Время устанавливается по регистрам СХ (старшая часть значения) и DX (младшая часть значения).

Коды 02 и 0б управляют временем и датой для компьютеров AT.

INT 1FH. Адрес таблицы графических символов. В графическом режиме имеется доступ к символам с кодами 128. ..255 в таблице объемом 1 Кбайт, содержащей по восемь байтов на каждый символ. Прямой доступ в графическом режиме обеспечивается только к первым 128 ASCII-символам (от 0 до 127).

ПРЕРЫВАНИЯ DOS

Во время своей работы BIOS использует два модуля DOS: IВМВIO.СОМ и IBMDOS.COM. Так как модули DOS обеспечивают большое количество разных дополнительных проверок, то операции DOS обычно проще в использовании и менее зависят от аппаратной реализации, чем их BIOS-аналоги.

Модуль IВМВIO.СОМ обеспечивает интерфейс с BIOS низкого уровня. Эта программа осуществляет управление вводом-выводом при чтении данных из внешних устройств в память и записи из памяти на внешние устройства.

Модуль IBMDOS.COM содержит средства управления файлами и ряд сервисных функций, таких, как блокирование и деблокирование записей. Когда пользовательская программа выдает запрос INT 21Н, то в программу IBMDOS через регистры передается определенная информация. Затем программа IBMDOS транслирует, эту информацию в один или несколько вызовов IBMBIO, которая, в свею очередь, вызывает BIOS. Указанные связи приведены на следующей схеме:

Как показано выше, прерывания от 20Н до 62H зарезервированы для операций DOS. Ниже приведены основные операции:

INT 20Н. Завершение программы. Запрос завершает выполнение программы и передает управление в DOS. Данный запрос обычно находится в основной процедуре.

INT 21Н. Запрос функций DOS. Основная операция DOS, вызывающая определенную функцию в соответствии с кодом в регистре АН. Назначение функций DOS описано в следующем разделе.

INT 22Н. Адрес подпрограммы обработки завершения задачи

(cм.INT 24Н).

INT 23Н. Адрес подпрограммы реакции на Ctrl/Break (см.INT 24Н).

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

INT 25H. Абсолютное чтение с диска.

INT 26Н. Абсолютная запись на диск.

INT 27H. Завершение программы, оставляющее ее резидентной. Позволяет сохранить СОМ-программу в памяти. Подробно данная операция рассмотрена в последующем разделе "Резидентные программы".

ФУНКЦИИ ПРЕРЫВАНИЯ DOS INT 21H

Ниже приведены базовые функции для прерывания DOS INT 21H. Код функции устанавливается в регистре АН:

00 Завершение программы (аналогично INT 20H).

01 Ввод символа с клавиатуры с эхом на экран.

02 Вывод символа на экран.

03 Ввод символа из асинхронного коммуникационного
канала.

04 Вывод символа на асинхронный коммуникационный
канал.

05 Вывод символа на печать.

06 Прямой ввод с клавиатуры и вывод на экран.

07 Ввод с клавиатуры без эха и без проверки

Ctrl/Break.

08 Ввод с клавиатуры без эха с проверкой Ctrl/Break.

09 Вывод строки символов на экран .

0А Ввод с клавиатуры с буферизацией .

0В Проверка наличия ввода с клавиатуры.

0С Очистка буфера ввода с клавиатуры и запрос на

ввод.

0D Сброс диска .

0Е Установка текущего дисковода .

0F Открытие файла через FCB .

10 Закрытие файла через FCB .

11 Начальный поиск файла по шаблону.

12 Поиск следующего файла по шаблону.

13 Удаление файла с диска .

14 Последовательное чтение файла.

15 Последовательная запись файла.

16 Создание файла.

17 Переименование файла.

18 Внутренняя операция DOS.

19 Определение текущего дисковода.

1А Установка области передачи данных (DTA).

1В Получение таблицы FAT для текущего дисковода.

1C Получение FAT для любого дисковода.

21 Чтение с диска с прямым доступом.

22 Запись на диск с прямым доступом.

23 Определение размера файла.

24 Установка номера записи для прямого доступа.

25 Установка вектора прерывания.

26 Создание программного сегмента.

27 Чтение блока записей с прямым доступом.

28 Запись блока с прямым доступом.

29 Преобразование имени файла во внутренние

параметры.

2А Получение даты (СХ-год, DН-месяц, DL-день).

2В Установка даты.

2С Получение времени (СН-час, СL-мин, DН-с, DL-1/100с).

2D Установка времени.

2Е Установка/отмена верификации записи на диск.

Следующие расширенные функции возможны в DOS начиная

с версии 2.0:

2F Получение адреса DTA в регистровой паре ES:ВХ.

30 Получение номера версии DOS в регистре АХ.

31 Завершение программы, после которого

она остается резидентной в памяти.
33 Проверка Ctrl/Break.

35 Получение вектора прерывания (адреса
подпрограммы).

36 Получение размера свободного пространства на
диске.

38 Получение государственно зависимых форматов.

39 Создание подкаталога (команда MKDIR).

ЗА Удаление подкаталога (команда RMDIR).

3В Установка текущего каталога (команда CHDIR).

ЗС Создание файла без использования FCB.

3D Открытие файла без использования FCB.

ЗЕ Закрытие файла без использования FCB.

3F Чтение из файла или ввод с устройства.

40 Запись в файл или вывод на устройство.

41 Удаление файла из каталога.

42 Установка позиции для последовательного доступа.
43 Изменение атрибутов файла.

44 Управление вводом-выводом для различных
устройств.

45 Дублирование файлового номера.

46 "Склеивание" дублированных файловых номеров.

47 Получение текущего каталога.

48 Выделение памяти из свободного пространства.

49 Освобождение выделенной памяти.

4А Изменение длины блока выделенной памяти.

4В Загрузка/выполнение программы (подпроцесса).

4С Завершение подпроцесса с возвратом управления.

4D Получение кода завершения подпроцесса.

4Е Начальный поиск файла по шаблону.

4F Поиск следующего файла по шаблону.

54 Получение состояния верификации.

56 Переименование файла.

57 Получение/установка даты и времени изменения
файла.

Следующие расширенные функции возможны в DOS начиная с версий 3.0:

59 Получение расширенного кода ошибки.

5А Создание временного файла.

5В Создание нового файла.

5С Блокирование/разблокирование доступа к файлу.
62 Получение адреса префикса программного сегмента
(PSP).

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



13. ОБРАБОТКА ТАБЛИЦ: ПОИСК И СОРТИРОВКА

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

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

Таблица символов ассемблера состоит из элементов фиксированного формата, каждый из которых в свою очередь состоит из группы слов. В таблице хранится имя символа, его значение и различные признаки, такие, например, как признак перемещаемости. Имя символа - это ключ, а именно символьная строка, отличающая каждый элемент таблицы от других и используемая во время поиска. Каждый символ имеет соответствующий адрес - его значение. (Аналогично в телефонной книге имя абонента является ключом, а его номер телефона - значением.) Относительно таблицы символов ассемблера необходимо сделать два важных замечания:

1. Символы помещаются в таблицу в том порядке, в каком они поступают, так что маловероятно, что таблица будет упорядочена.

2. Символы и связанные с ними данные помещаются в последовательные адреса таблицы. Все они упаковываются начиная с одного конца таблицы.

Эти два замечания справедливы для большинства таблиц, создаваемых по одному элементу за один раз без задания конкретных адресов элементов.

ПОИСК В ТАБЛИЦЕ

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

ЛИНЕЙНЫЙ ПОИСК

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

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
426
Средний доход
с одного платного файла
Обучение Подробнее