
лр7
.docx
Лабораторна робота № 7
ОРГАНІЗАЦІЯ КЕРУВАННЯ ПАМ`ЯТТЮ В ПРОГРАМАХ
НА МОВІ АСЕМБЛЕРА
Мета роботи - вивчення правил роботи з сегментами програми на мові асемблера, директивами визначення даних, ознайомлення з організацією пересилок даних.
Завдання:
Написати програму, яка здійснює пересилання даних між окремими комірками сегмента даних, вмістом яких є значення змінних програми. Для цього в сегменті даних програми визначити змінні a1, a2, ... а8. Типи змінних і види пересилань надаються в табл. 2.1. Коректність результатів пересилань проконтролювати щляхом виконання виконуваного файла програми у відлагоджувачі по крокам.
12 |
Типи змінних |
word |
byte |
word |
byte |
word |
byte |
word |
byte |
Новий вміст |
a7 |
a8 |
a1 |
a2 |
a3 |
a4 |
a5 |
a6 |
Лістинг програми за варіантом:
data segment
a1 dw 1
a2 db 2
a3 dw 3
a4 db 4
a5 dw 5
a6 db 6
a7 dw 7
a8 db 8
pkey db "press any key...$"
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
mov ax, data
mov ds, ax
mov es, ax
mov ax,a1
mov bx,a7
mov ax,bx
mov ch,a2
mov cl,a8
mov ch,cl
mov dx,a3
mov dx,ax
mov ah,a4
mov al,a2
mov ah,al
mov bx,a5
mov ax,a3
mov bx,ax
mov ch,a6
mov cl,a4
mov ch,cl
mov ax,a7
mov bx,a5
mov ax,bx
mov ch,a8
mov cl,a6
mov ch,cl
mov ah,4ch
int 21h
ends
Рисунок 1 – Результат виконання програми