Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laba_2 (1).docx
Скачиваний:
5
Добавлен:
12.09.2019
Размер:
112.84 Кб
Скачать

Задача 3.6

data segment para 'data' ;Откроем сегмент данных

num1 dw 5

num2 dw 8

data ends ;Откроем сегмент данных

assume CS:code, DS:data ;Определим соответствие сегментных регистров сегментам

stk segment stack para 'stack' ;Откроем сегмент стека

db 256 dup (?) ;Отведем под стек 256 байт

stk ends ;Закроем сегмент стека

code segment para 'code' ;Откроем сегмент команд

begin: mov AX, data ;Настроим DS

mov DS, AX ;на сегмент данных

mov CX, num1 ;присваиваем значение num1 в регистр CX

mov SI, num2 ;присваиваем значение num2 в регистр SI

xchg CX,SI ;используем директиву для обмена значениями между регистрами CX и SI

mov AX, 4C00h ;Функция DOS завершения программы

int 21h ;Вызов функции DOS

code ends ;Закроем сегмент команд

end begin ;Конец текста с точкой входа

Задача 3.7

data segment para 'data' ;Откроем сегмент данных

num1 dw 5

num2 dw 8

data ends ;Откроем сегмент данных

assume CS:code, DS:data ;Определим соответствие сегментных регистров сегментам

stk segment stack para 'stack' ;Откроем сегмент стека

db 256 dup (?) ;Отведем под стек 256 байт

stk ends ;Закроем сегмент стека

code segment para 'code' ;Откроем сегмент команд

begin: mov AX, data ;Настроим DS

mov DS, AX ;на сегмент данных

mov CX, num1 ;присваиваем значение num1 в регистр CX

mov SI, num2 ;присваиваем значение num2 в регистр SI

push CX ;помещаем CX в стек

push SI ;помещаем SI в стек

pop CX ;помещаем из стека в регистр CX

pop SI ;помещаем из стека в регистр SI

mov AX, 4C00h ;Функция DOS завершения программы

int 21h ;Вызов функции DOS

code ends ;Закроем сегмент команд

end begin ;Конец текста с точкой входа

Вывод: в ходе выполнения лабораторной работы я научилась пересылать данные между регистрами, сегментными регистрами и стеком различными способами с помощью команд mov, xchg, push и pop.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]