Лабораторные работы / ЭВМлаба2
.docМИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
МЕЖДУНАРОДНЫЙ ИНСТИТУТ ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
Лабораторная работа № 2
По дисциплине «Организация и функционирование ЭВМ»
Выполнил :
студент группы 417217 Гмыза А. А.
Проверил:
Преподаватель Новиков С. О.
Минск 2008
Лабораторная работа №2
«Изучение команд пересылки данных»
Цель работы: изучить способы адресации данных микропроцессором i8x86 и применение этих методов при пересылке данных.
Оборудование: IBM - совместимый персональный компьютер, работающий под управлением операционной системы, совместимой с MS-DOS®.
Программное обеспечение: Программа DEBUG
Краткие теоретические сведения.
Существует восемь методов адресации данных:
-
Регистровая;
-
Непосредственная;
-
Прямая;
-
Косвенная;
-
Адресация по базе со сдвигом;
-
Косвенная адресация с масштабированием;
-
Адресация по базе с индексированием;
-
Адресация по базе с индексированием и масштабированием.
К группе команд по пересылке данных относятся команды: MOV и XCHG. MOV – это основная команда пересылки данных. Она реализует самые разнообразные варианты пересылки. Для двунаправленной пересылки данных применяют команду XCHG.
Индивидуальное задание.
1. Объявить массив заданного размера и с заданным количеством элементов (табл. 1).
2. Проинициализировать массив 0, используя произвольный метод адресации.
3. В каждый элемент массива переслать число (табл.1), используя метод адресации согласно варианту (табл.2).
4. Вычислить сумму элементов массива согласно варианту и переслать результат в элемент массива с заданным номером (табл.3 выполнять в лабораторной № 3).
Таблица 1
-
Массив
Число
Количество элементов
Размер
Знак
8
+
12h
13
Таблица 2
Вид адресации |
Непосредственная |
Таблица 3
Элементы массива |
результат в эл-т № |
|
с |
до |
|
2 |
11 |
8 |
Используя команду программы DEBUG Fill, зададим массив: f0 d 0. В каждый элемент массива перешлём число 12h, используя метод непосредственной адресации:
mov cx,0D
mov bx, 0
mov ah,12
mov[bx],ah
inc bx
loop 108
Вычислим сумму элементов массива согласно варианту:
mov al,[2]
mov si,3
mov cx,9
adc al,[si]
inc si
loop 116
mov [7],al
Вывод: Используя команды программы DEBUG и команды языка Ассемблера, мы изучили способы адресации данных и применение этих методов при пересылке данных.