Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Введення в основи програмування на мові асемблер, за допомогою Win32API функцій.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
АСУ

Інформація про роботу

Рік:
2014
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Системне програмування

Частина тексту файла

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра АСУ Звіт до лабораторної роботи №1 з курсу « Системного програмування» на тему: «Введення в основи програмування на мові асемблер, за допомогою Win32API функцій.» Львів 2014 Мета роботи: навчитися використовувати функції Win32API при програмуванні в операційній системі Windows. Хід роботи: Об’єднати результати функцій GetComputerName, GetCurrentDirectory, GetUserName та GetWindowsDirectory в один рядок. Формат результату, аналогічний до варіанту №1. Замінити в рядку-результаті всі букви, ANSI значення яких парне число, на символ «!». Звернути увагу, потрібно накласти таку умову, щоб код Enter (#13 #10), було не змінні. Записую код програми: include user32.inc include kernel32.inc includelib user32.lib includelib kernel32.lib include advapi32.inc includelib advapi32.lib .data sztitle db 'Лабортаорна робота 1',0 szbuf1 db 1000 dup(0) size_buf1 dd 100 szbuf2 db 1000 dup(0) szbuf3 db 100 dup(0) szbuf4 db 1000 dup (0) rez db 1000 dup (0) szformat db 'ComputerName: %s',13, 10 db 'CurrentDirectory: %s', 13, 10 db 'UserName: %s',13, 10 db 'WindowsDirectory: %s', 0 .386 .model flat,STDCALL option casemap :none ;case sensitive include lab1.inc .code Begin: call main invoke ExitProcess,NULL main proc invoke GetComputerName, addr szbuf1, addr size_buf1 invoke GetCurrentDirectory, 255, addr szbuf2 invoke GetUserName, addr szbuf3, addr size_buf1 invoke GetWindowsDirectory, addr szbuf4, addr size_buf1 invoke wsprintf, addr rez, addr szformat, addr szbuf1, addr szbuf2, addr szbuf3, addr szbuf4 invoke MessageBox,0, addr rez,addr sztitle,MB_OK lea edi,rez td: mov al, [edi] and al, 1h cmp al, 0 jnz l1 mov al, [edi] cmp al, 65 jb l1 cmp al,122 ja l1 cmp al, 91 jb l2 cmp al, 96 ja l2 jmp l1 l2: mov al, '!' mov [edi], al l1: inc edi mov al, [edi] cmp al, 0 jnz td invoke MessageBox,0, addr rez, addr sztitle,MB_OK ret main endp end Begin Приклади виконання програми: / / Висновок: на цій лабораторній роботі я навчився використовувати функції Win32API при програмуванні в операційній системі Windows. Основний набір функцій знаходиться в бібліотеці kernel32.dll, котра складає ядро операційної системи Windows. В цій роботі я використав такі функції: GetComputerName, GetCurrentDirectory, GetUserName, GetWindowsDirectory та MessageBox. Для роботи з функцією GetUserName окремо підключив бібліотеку advapi32.lib. Замінив в рядку-результаті всі букви, ANSI значення яких парне число, на символ «!».
Антиботан аватар за замовчуванням

17.03.2015 22:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини