Файл: Лабораторная работа 5 по дисциплине Информатика Студент группы итз0900021 Вятчинин Андрей Анатольевич.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 08.11.2023
Просмотров: 83
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство науки и высшего образования Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования «Курганский государственный университет» Институт математики и интеллектуальных систем Кафедра «Программное обеспечение автоматизированных систем» Лабораторная работа №5 по дисциплине: «Информатика» Выполнил: Студент группы ИТЗ-0900021 Вятчинин Андрей Анатольевич Проверил: старший преподаватель Соколова Н.Н. Курган 2022Задание Лаб5.1. Исследуйте процесс изменения состояния «флаговых байтов» в процессе манипулирования управляющими клавишами Shift, Ctrl, CapsLock, NumLock. По результатам эксперимента составьте таблицу, аналогичную таблице 7.2. Результаты представьте в шестнадцатеричном и двоичном форматах и сохраните в отчете.
01 00 = 0000 0001 0000 000002 00 = 0000 0010 0000 00000С 03 = 0000 1100 0000 001104 01 = 0000 0100 0000 000140 = 0100 0000 0000 0000
20 = 0010 0000 0000 0000Задание Лаб5.2. Установите режим «верхний регистр», не нажимая клавиши CapsLock. Попытайтесь отменить установленный режим с помощью этой клавиши. Проведите аналогичный эксперимент с клавишей NumLock. Прокомментируйте результаты эксперимента. После изменения первого байта флагов на 20 и выхода из peek.com на клавиатуре загорелся индикатор означающий, что Num Lock включен.Задание Лаб5.3. Запишите адреса ячеек буфера клавиатуры, в которые будут записаны и из которых будут прочитаны Scan-код и ASCII-код очередной символьной клавиши. Экспериментально подтвердите правильность своих предположений.Адреса ячеек буфера клавиатуры начинаются с [0040:001E] до [0040:002E].Задание Лаб5.4. Введите символы G, g, П и п, связанные с одной клавишей. Определите Scan-код этой клавиши и ASCII-коды введенных символов. Результаты представьте в шестнадцатеричной, десятичной и двоичной системах счисления. Выполните аналогичные действия для другой символьной клавиши. Результаты сохраните в отчете.47h – G 67h – g 8Fh – П AFh - п47h = 71 = 0100 011167h = 103 = 0110 01118Fh = 143 = 1000 1111AFh = 175 = 1010 111148h – H 68h – h 90h – Р E0h – р48h = 72 = 0100 100068h = 104 = 0110 100090h = 144 = 1001 0000E0h = 224 = 1110 0000Задание Лаб5.5. Объясните, почему обработчик 9-го прерывания сгенерировал 4 различных ASCII-кода символа по одному значению Scan-кода клавиши.Получение разного Scan-кода клавиши зависит от управляющих клавиш, таких как Ctrl, Shift, Alt.Задание Лаб5.6. Введите символы, указанные в задании №4, прямым набором их ASCII-кодов на цифровой клавиатуре (при нажатой клавише Alt). Зафиксируйте промежуточные состояния ячейки с адресом [0040:0019]h после ввода каждой очередной цифры ASCII-кода символа, а также состояние этой ячейки и соответствующих ячеек буфера клавиатуры после отпускания клавиши Alt. Опишите алгоритм ввода символа прямым набором его ASCII-кода.
При попытке прямого ввода через ASCII-код ничего не вводится, поскольку такой метод не поддерживается виртуальной машиной.Задание Лаб5.7. Введите прямым набором символ с ASCII-кодом «1234». Прокомментируйте результат ввода.Поскольку данный метод ввода не работает в виртуальной машине, задание выполнялось посредством системы Windows.При вводе ASCII-кода «1234» ввелся символ похожий на русскую «П».Задание Лаб5.8. Введите прямым набором «управляющие символы» (ASCII-коды от 0 до 31). Используя электронный справочник HELP, определите комбинации клавиш (Ctrl + клавиша), используемых для ввода управляющих символов.Как и в задании 6 при попытке ввода комбинации Ctrl+клавиша ничего не происходит, а при попытке ввести комбинацию на Windows высвечиваются другие символы.Задание Лаб5.9. Используя электронный справочник HELP и технологию прямого набора кодов символов, составьте таблицу ASCII-кодов символов псевдографики. Псевдографические символы:
| 1-й байт флагов [0040:0017]h | 2-й байт флагов [0040:0018]h | ||
| Байт | Статус клавиатуры при единичном значении бита | Байт | Статус клавиатуры при единичном значении бита |
| 01 | Нажата правая клавиша Shift | 00 | Нажата правая клавиша Shift |
| 02 | Нажата левая клавиша Shift | 00 | Нажата левая клавиша Shift |
| 0С | Нажата правая клавиша Ctrl | 03 | Нажата правая клавиша Ctrl |
| 04 | Нажата левая клавиша Ctrl | 01 | Нажата левая клавиша Ctrl |
| 40 | Установлен режим «CapsLock» | 40 | Нажата клавиша «CapsLock» |
| 20 | Установлен режим «NumLock» | 20 | Нажата клавиша «NumLock» |
20 = 0010 0000 0000 0000Задание Лаб5.2. Установите режим «верхний регистр», не нажимая клавиши CapsLock. Попытайтесь отменить установленный режим с помощью этой клавиши. Проведите аналогичный эксперимент с клавишей NumLock. Прокомментируйте результаты эксперимента. После изменения первого байта флагов на 20 и выхода из peek.com на клавиатуре загорелся индикатор означающий, что Num Lock включен.Задание Лаб5.3. Запишите адреса ячеек буфера клавиатуры, в которые будут записаны и из которых будут прочитаны Scan-код и ASCII-код очередной символьной клавиши. Экспериментально подтвердите правильность своих предположений.Адреса ячеек буфера клавиатуры начинаются с [0040:001E] до [0040:002E].Задание Лаб5.4. Введите символы G, g, П и п, связанные с одной клавишей. Определите Scan-код этой клавиши и ASCII-коды введенных символов. Результаты представьте в шестнадцатеричной, десятичной и двоичной системах счисления. Выполните аналогичные действия для другой символьной клавиши. Результаты сохраните в отчете.47h – G 67h – g 8Fh – П AFh - п47h = 71 = 0100 011167h = 103 = 0110 01118Fh = 143 = 1000 1111AFh = 175 = 1010 111148h – H 68h – h 90h – Р E0h – р48h = 72 = 0100 100068h = 104 = 0110 100090h = 144 = 1001 0000E0h = 224 = 1110 0000Задание Лаб5.5. Объясните, почему обработчик 9-го прерывания сгенерировал 4 различных ASCII-кода символа по одному значению Scan-кода клавиши.Получение разного Scan-кода клавиши зависит от управляющих клавиш, таких как Ctrl, Shift, Alt.Задание Лаб5.6. Введите символы, указанные в задании №4, прямым набором их ASCII-кодов на цифровой клавиатуре (при нажатой клавише Alt). Зафиксируйте промежуточные состояния ячейки с адресом [0040:0019]h после ввода каждой очередной цифры ASCII-кода символа, а также состояние этой ячейки и соответствующих ячеек буфера клавиатуры после отпускания клавиши Alt. Опишите алгоритм ввода символа прямым набором его ASCII-кода.
При попытке прямого ввода через ASCII-код ничего не вводится, поскольку такой метод не поддерживается виртуальной машиной.Задание Лаб5.7. Введите прямым набором символ с ASCII-кодом «1234». Прокомментируйте результат ввода.Поскольку данный метод ввода не работает в виртуальной машине, задание выполнялось посредством системы Windows.При вводе ASCII-кода «1234» ввелся символ похожий на русскую «П».Задание Лаб5.8. Введите прямым набором «управляющие символы» (ASCII-коды от 0 до 31). Используя электронный справочник HELP, определите комбинации клавиш (Ctrl + клавиша), используемых для ввода управляющих символов.Как и в задании 6 при попытке ввода комбинации Ctrl+клавиша ничего не происходит, а при попытке ввести комбинацию на Windows высвечиваются другие символы.Задание Лаб5.9. Используя электронный справочник HELP и технологию прямого набора кодов символов, составьте таблицу ASCII-кодов символов псевдографики. Псевдографические символы: