
лабораторная работа / лабораторные работы по ASSAMBLER / rezhimy_adresacii
.docМинистерство образования Российской Федерации
УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра технической кибернетики
Отчет
по лабораторной работе № 2
«Режимы адресации»
Выполнил: студент группы УТС-317
Проверил: Мигранов А.Б.
Уфа 2010
ЦЕЛЬ РАБОТЫ: Целью работы является разработка простой программы преобразования данных для приобретения практических навыков программирования на языке ассемблера и закрепления знаний по режимам адресации.
Ход работы:
-
Реализация программы с применением прямой адресации
TITLE EX_PROG
PAGE ,132
STACK SEGMENT PARA STACK 'STACK'
DB 64 DUP('STCK ')
STACK ENDS
DSEG SEGMENT PARA PUBLIC 'DATA'
SOURCE DB 10,20,30,40,50,60,70,80
DEST DB 7 DUP(?)
DSEG ENDS
SUBTTL ОСНОВНАЯ ПРОГРАММА
PAGE
CSEG SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CSEG,DS:DSEG,SS:STACK
OUR_PROG PROC FAR
PUSH DS
SUB AX,AX
MOV AX,0
PUSH AX
MOV AX,DSEG
MOV DS,AX
MOV DEST,0
MOV DEST+1,0
MOV DEST+2,0
MOV DEST+3,0
MOV DEST+4,0
MOV DEST+5,0
MOV DEST+6,0
MOV AL,SOURCE+1
MOV DEST+0,AL
MOV AL,SOURCE+3
MOV DEST+2,AL
MOV AL,SOURCE+5
MOV DEST+4,AL
MOV AL,SOURCE+7
MOV DEST+6,AL
MOV DEST+1,0
MOV DEST+3,0
MOV DEST+5,0
MOV DEST+7,0
RET
OUR_PROG ENDP
CSEG ENDS
END OUR_PROG
-
Реализация программы с применением косвенной адресации.
TITLE EX_PROG
PAGE ,132
STACK SEGMENT PARA STACK 'STACK'
DB 64 DUP('STCK ')
STACK ENDS
DSEG SEGMENT PARA PUBLIC 'DATA'
SOURCE DB 10,20,30,40,50,60,70,80
DEST DB 7 DUP(?)
DSEG ENDS
SUBTTL ОСНОВНАЯ ПРОГРАММА
PAGE
CSEG SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CSEG,DS:DSEG,SS:STACK
OUR_PROG PROC FAR
PUSH DS
SUB AX,AX
MOV AX,0
PUSH AX
MOV BX,OFFSET SOURCE
MOV DI,OFFSET DEST
MOV AX,DSEG
MOV DS,AX
MOV AL,0
MOV [DI],AL
MOV [DI+1],AL
MOV [DI+2],AL
MOV [DI+3],AL
MOV [DI+4],AL
MOV [DI+5],AL
MOV [DI+6],AL
MOV AL,[BX]+1
MOV [DI+0],AL
MOV AL,[BX]+3
MOV [DI+2],AL
MOV AL,[BX]+5
MOV [DI+4],AL
MOV AL,[BX]+7
MOV [DI+6],AL
MOV AL,0
MOV [DI]+1,AL
MOV [DI]+3,AL
MOV [DI]+5,AL
MOV [DI]+7,AL
RET
OUR_PROG ENDP
CSEG ENDS
END OUR_PROG
Вывод: в процессе выполнения работы были разработаны программы преобразования данных для приобретения практических навыков программирования на языке ассемблере и закрепление знаний по режимам адресаций с применением прямой и косвенной типов адресаций.