Рабочие задания. 1. Изменить размер окна консоли.
Введение
В данной лабораторной работе будет рассматриваться использование консоли для управление файлами, ввод и вывод из консоли, сравнивание строк.
1. Изменить размер окна консоли. 2. Поменять заголовок окна консоли. 3. Изменить позиции курсора. 4. Поменять цветовые атрибуты текста. 5. Разобрать алгоритм работы процедур NUMPAR и GETPAR.
Выполнение работы: По причине работы в Unix системе и введение в графический интерфейс я решил написать полноценное графическое окно полагаясь на материалы из официальной документации nasm и tkinter. Изобретать велосипед я не буду и для поднятия оконнго интерфейса буду использовать порт для python. То бишь средствами ассемблера я буду управлять оконным приложением на tkinter. Круто да?. Пример такого слияния показан на рисунке №1 Рисунок №1 Первое что мы делаем это программными средствами изменяем размер окна. Если запихнуть все в цикл то будет конечно круто но мне лень. Поэтому просто перезапускаем программу с другими значениями. И все это крутится в python эмуляции windows библиотек. Результаты изменения окон показаны на рисунках №2, №3 и №4 соответственно. Рисунок №2(маленькое окно) Рисунок №3(Среднее окно) Риунок №4(Большое окно) Исходный код программы, а точнее его главная часть показана на рисунке №5 Рисунок №5 Также изменим заголовок окна. Все впринципе предельно просто. Результат показан на рисунке №6 Рисунок №6 По умолчанию при запуске приложения курсор остается на том же месте где он и был, возможно насильно перетаскивать курсор в любую точку программы при ее запуске. Результат показан на рисунке №7 и на рисунке №8 Рисунок №7 Рисунок №8 Контрольные вопросы 1. Какие аргументы использует АРІ функция GetStdHandle? 2. Дайте названия цветов букв и символов используемых функцией SetConsoleTextAttribute? 3. Назовите параметры функции CharToOem? 4. Какие типы событий зарезервированы операционной системой? Ответы на вопросы Заключение В данной лабораторной работе я работал с графикой на языке ассемблера, а именно с графическими примитивами. Все подробно описано и изложено в данной работе.
Список литературы 1. wikiTaxi // Assembler NASM 2. wikiTaxi // Основные команды NASM 3. wikiTaxi // Ядро Darwin 4. wikiTaxi // Компиляция пакетов
|