ексту
PUSH COL1HANDLSetConsoleTextAttribute @ 8
; вивести строкуOFFSET STR1LENSTR; в EBX довжина строкі0OFFSET LENSEBXOFFSET STR1HANDLWriteConsoleA @ 20
; чекати введення рядка: CRD.X, 0
MOV CRD.Y, 1CRDHANDL
CALL SetConsoleCursorPosition @ 8
; перевіримо, чи не з мишею чи що?
PUSH 0OFFSET LENS200OFFSET BUFHANDL1ReadConsoleA @ 20OFFSET C01OFFSET MOUS_KEYHANDL1ReadConsoleInputA @ 16WORD PTR MOUS_KEY, MOUSE_EV
JNE L00
; вивести отриманий рядок
; спочатку задати колірні атрибути виведеного тексту
PUSH COL2HANDLSetConsoleTextAttribute @ 8
; ----------------------------------------------------------- - 0OFFSET LENS [LENS]; довжина введеної строкіOFFSET BUFHANDLWriteConsoleA @ 20
; невелика задержкаECX, 01FFFFFFFH: L1
; закрити консоль
CALL FreeConsole @ 0ExitProcess @ 4
; рядок - [EBP + 08H]
; довжина в EBXPROC0,0EAX
; -------------- EDI, DWORD PTR [EBP + 08H]
MOV EBX, EDIECX, 100; обмежити довжину рядка
XOR AL, ALSCASB; знайти символ 0
SUB EDI, EBX; довжина рядка, включаючи 0
MOV EBX, EDIEBX
; -------------- EAX4ENDP
_ TEXT ENDSSTART
Результати роботи
малюнок 1 робота програми
Висновок
В результаті виконання курсової роботи було вивчено один з розділів операційної системи - робота з консольними додатками, також в консольному додатку були задіяні клавіатура і миша. Була написана програма на 32-бітному асемблері із застосуванням API-функцій.
Список літератури
1. Пирогов В. Ю. Асемблер для Windows.- М .: Видавець Молгачева С.В., 2002. - 552 с.
. Методичні вказівки для виконання курсової роботи «Вивчення операційної системи Windows» з курсу «Операційні системи» для студентів спеціальності 23.01.00 «Обчислювальні машини, комплекси,
. Особливості роботи з 32-бітовим ассемблером (дата звернення: 20.04.2014) http://wasm/wault/