
лабораторная работа / лабораторные работы по ASSAMBLER / lab2 вариант 11
.doc
МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РФ
САРАТОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ
факультет: иженерно-строительный
кафедра: управление и информатика в технических системах
Лабораторная работа №2
по дисциплине: СПО
Вариант №11
Выполнил ст. гр. УИТ-32
Принял:
2006 г.
Цель работы: ознакомление со способами определения данных и изучение механизма передачи управления в программе (циклы и переходы) для операций сравнения.
Задание:
-
Определить массив в области данных
-
Составить алгоритм прграммы, выполняющей действия с элементами массива согласно № варианта (см. табл.).
-
Написать программу на языке ассемблер, реализующей данный алгоритм.
-
Отладить и выполнить программу.
Задание:
12
|
Наити количество положи-тельных элементов массива, попавших в заданный интервал |
(12;24)
|
15
|
Листинг программы:
DOSSEG
.MODEL small
.stack 100h
.data
massiv DB -1,12,13,-3,30,32,44,4,22,6,7,12,64,24,0
.code
mov ax,@data
mov ds,ax
mov cx,15
mov dx,0
lea bx,massiv
m1:
mov al,[bx]
mov ah,0
cmp al,12
jl m2
cmp al,24
ja m2
inc dx
m2:
inc bx
loop m1
mov ah,4ch
int 21h
END
В конце выполнения программы dx=0005H=5, что соответствует теоретическому результату для заданного массива (всего элементов, подходящих под условие было 5)