МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
ЗВІТ
до лабораторної роботи № 1
з предмету:
“Засоби системного програмування”
Варіант 15
Прийняв:
викладач
Мороз І.В
Львів
2018
Тема: особливості програмування з використанням 32-розрядного
асемблера.
Мета: Ознайомитись з програмною моделлю 32 -розрядних
мікропроцесорів Intel та оволодіти навиками створення програм,
використовуючи 32-розрядний Асемблер.
Завдання
1. Створити, використовуючи мову асемблера мікропроцесорів сімейства
x86 Intel, *.exe програму, яка реалізовує обчислення, заданого варіантом виразу.
A = {a[i]} – наперед заданий масив з N чисел цілих чисел. c, d – цілі константи.
K, L – цілі додатні числа.
2. Переконатися у правильності роботи програми використовуючи
VKDebug.
3. Скласти звіт про виконану роботу з приведенням тексту програми.
4. Дати відповідь на контрольні запитання.
Варіант завдання
Код програми
.586
.model flat, stdcall
option casemap: none
include /masm32/include/windows.inc
include /masm32/include/user32.inc
include /masm32/include/kernel32.inc
include \masm32\include\debug.inc
includelib /masm32/lib/user32.lib
includelib /masm32/lib/kernel32.lib
includelib \masm32\lib\debug.lib
.data
x dd 0,-1,2,-3,4,-5,6,-7,8,-9,10,-11,12,-13,14
n dd 15
.code
start:
mov eax, 0
mov ecx, n
mov ebx, 0
L: cmp x[ebx], 0
jge prnt
add eax, x[ebx]
prnt: add ebx, 4
loop L
PrintDec eax, "Sum" ;
invoke ExitProcess, 0
end start
Результат виконання програми
Рис.1 Вікно відлагоджувача
Висновок: на даній лабораторній роботі я ознайомився з програмною
моделлю 32 -розрядних мікропроцесорів Intel та створив програму згідно
варіанту використовуючи 32-розрядний Асемблер.