СОДЕРЖАНИЕ ВВЕДЕНИЕ 1 ОПЕРАЦИИ ВВОДА/ВЫВОДА В БАЗОВОЙ ВЕРСИИ DOS 1.1 Функции ввода с клавиатуры 1.2 Функции вывода на экран 1.3 Сервис клавиатуры BIOS-Int 16h 1.4 Описание алгоритмов вывода чисел 1.5 Задание 2 ГЕНЕРАЦИЯ ЗВУКОВЫХ СИГНАЛОВ В ПЭВМ 2.1 Таймер КР1810ВИ54 2.2 Программируемый периферийный интерфейс КР580ВВ55А 2.3 Генерация звука в IBMPC 2.4 Выполнение задержки 2.5 Область данных BIOS 2.6 Задание 3 ПРИНЦИП РАБОТЫ КЛАВИАТУРЫ 3.1 Таблица векторов прерываний 3.2 Маскирование прерываний 3.3 Изменение таблицы векторов прерываний 3.4 Задание 4 ПРИНЦИПЫ РАБОТЫ ВИДЕОСИСТЕМЫ ПЭВМ 4.1 Адресация и режимы работы адаптера CGA 4.2 Режим работы дисплея 4.3 Задание ЗАКЛЮЧЕНИЕ СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
ВВЕДЕНИЕ В любой сфере человеческой деятельности - в науке, технике, производстве - методы и средства вычислительной техники направлены на повышение производительности труда. В связи с этим уровень специалистов в существенной мере определяется их подготовкой в следующих направлениях, связанных с применением средств вычислительной техники: -управление технологическими процессами, включая автоматизированные контроль и диагностику технических средств; -использование ЭВМ для автоматизированного проектирования, научных исследований, административно-организационного управления. Стремительное совершенствование технологии производства интегральных полупроводниковых компонентов, обеспечившее возможность создания высокоэкономичных цифровых устройств обработки и хранения информации, а также появление эффективных средств программирования оказывают все более существенное влияние не только на развитие техники измерений и управления, но и на подход к автоматизации вообще. Первые попытки применения цифровых устройств для автоматизации производственных процессов относятся к началу 60-х гг., когда были разработаны первые управляющие вычислительные машины. В 70-х гг. ЭВМ стала обычным элементом оборудования автоматизированных систем. Дальнейшее развитие электронной вычислительной техники привело к ее широкому применению в военном деле, как составной части автоматизированных систем управления войсками и вооружением. Что предопределило повышение требований к квалификации современного командира-инженера, которому необходимо знать основы организации и функционирования универсальных и специализированных управляющих электронных вычислительных машин.
1 ОПЕРАЦИИ ВВОДА/ВЫВОДА В БАЗОВОЙ ВЕРСИИ DOS Программное прерывание Int 21h – это набор функций, с помощью которых организуется операции ввода/вывода в базовой версии DOS. 1.1 Функции ввода с клавиатуры аh=01h – Фильтрующий ввод с клавиатуры с ожиданием и эхом на экране. Пример: movah, 01 int 21h Результат функции – в AL находится код символа из буфера клавиатуры. При вводе функциональных клавиш (F1,…F12, PgUp и др.) необходимо 2 обращения к этой функции. При 1-м AL = 0, при 2-м AL = расширенный код ASCII. В процессе выполнения этой функции проверяется нажатие комбинаций клавиш Ctrl + Break, которая используется для прерывания работы программы, если она зацикливается. По Ctrl + Break можно снять программу, если она использует функции ввода/вывода, содержащие проверку на Ctrl + Break. Такие функции называют фильтрующими. ah = 08h – Фильтрующий ввод символа с клавиатуры с ожиданием без эха. Пример: mov ah, 08h int 21h Результат функции – в AL код символа. Отличается от предыдущей тем, что символ не отображается на экране. ah = 07h – Не фильтрующий ввод символа с клавиатуры с ожиданием без эха. Пример: mov ah, 07h int 21h Результат функции – в AL код символа. Отличается от предыдущей тем, что не реагирует на Ctrl + Break. аh = 0Вh – Проверить статус ввода (фильтрующая). Функция проверяет на наличия символа в буфере клавиатуры без извлечения его из буфера. Пример: Mov ah, 0Вh Int 21h Результат функции – AL = 00h, если буфер пуст, и AL=FFh, если есть символ в буфере клавиатуры. Пример выхода из программы по нажатию клавиши ESC без ожидания нажатия клавиши. mov ah, 0bh int 21h cmp al,0 jz m1 mov ah, 07h int 21h cmp al, 27 jne m1 mov ax, 4C00h int 21h m1: ;---Продолжение программы ah=0Ch – Чтение с предварительной очистки буфера . Пример: movah, 0Ch moval, int 21h Чтобы программа не читала из буфера клавиатуры давно нажатую клавишу, данная функция очищает буфер клавиатуры, а затем выполняет функцию, номер которой указана в регистре al. Для функций 06h и 0Ah необходимо указать дополнительные параметры в регистре dl и dx. Реакция на Ctrl – Break определяется используемой функцией ввода. ah=0Ah – Ввод строки в буфер ввода(фильтрующая). Для ввода строки нужно подготовить блок параметров. Пример: BL_par label byte Maxlen db 7 Actlen db ? S db 7 dup(?) ………………. Movah, 0Ah Leadx, BL_par ;адрес поля блока параметров Int 21h Результат функции – в поле S введённая строка, а в поле Actlen длинна введённой строки. Функция ожидает ввода строки начиная с текущей позиции курсора. Пользователь может набрать на экране 6 символов максимум (т.е. Maxlen - 1), а при вводе следующего символа выдаётся предупреждающий звуковой сигнал и символ не вводится. Набор строки завершается нажатием клавиши Enter, до нажатия Enter с помощью BackSpace строку можно отредактировать. Например: Если набранная строка – Строка Enter Тогда Actlen =6
‘С’ ‘Т’ ‘Р’ ‘О’ ‘К’ ‘А’ 0Dh(Код Enter) S= Если набрана строка – 123 Enter Тогда Actlen = 3 ‘1’ ‘2’ ‘3’ 0Dh(Код Enter) S= Если набранная строка – Строка - Enter Тогда Actlen = 0 0Dh X X X X X S = 1.2 Функции вывода на экран Ah=02h – Вывод символа на дисплей (фильтрующая) Пример movah, 02 movdl, 35hили dl, ‘5’ int21h В регистр dl помещается ASCII-код символа или указывается непосредственно сам символ в кавычках. Функция выводит символ на экран в текущую позицию курсора и перемещает курсор вправо на одну позицию. На символ BackSpace перемещает курсор влево на одну позицию. Функция реагирует на вывод управляющих кодов 07h(звонок), 08h(BackSpace), 09h(Tab), 0Ah(lf), 0Dh(cr). ah=09h – Вывод строки. Пример: Msg db 13,10эPress and key…$’ mov ah, 09h lea dx, Msg int21h В регистр dx помещается адрес выводимой строки, которая должна быть предварительно описана в сегменте данных, при этом в конце строки обязательно нужно указать символ $ (конец строки). 13 и 10 – это ASCII-коды символов возврата каретки и перевода строки, которые указываются для вывода строки в первую позицию новой строки экрана. Действие функции полностью аналогично функции 02h, но выводится не один символ, а целая строка.
Отчеты по практикеСОДЕРЖАНИЕ ВВЕДЕНИЕ 1 ОПЕРАЦИИ ВВОДА/ВЫВОДА В БАЗОВОЙ ВЕРСИИ DOS 1.1 Функции ввода с клавиатуры 1.2 Функции вывода на экран 1.3 Сервис клавиатуры
Оценок: 422 (Средняя 5 из 5)
Специалисты RetsCorp работают в digital-сфере более 7 лет. За это время мы разработали более 500+ успешных проектов. Основываясь на своем опыте и знании рынка, мы с уверенностью можем сказать, что будет работать, а что — нет. Заказывая создание лендинга для бизнеса в нашей студии, вы получаете работающие решения, необходимые именно вашему бизнесу.
Сотрудничая с нами, вы будете не клиентом, а нашим партнером. Благодаря этому мы будем развивать ваш бизнес как собственный. Мы так же как и вы заинтересованы в успехе проекта, поскольку ваша успешность будет нашей рекламой.