实验名称:寻址方式在结构化数据访问中的应用
一:实验目的
- 学会寻址方式在结构化数据访问中的应用;
- 利用前面所学知识熟悉编程技巧。
二:实验内容及步骤
内容:(1):
assume cs:code
data segment
db ‘1975’, ‘1976’, ‘1977’, ‘1978’, ‘1979’, ‘1980’, ‘1981’, ‘1982’, ‘1983’
db ‘1984’, ‘1985’, ‘1986’, ‘1987’, ‘1988’, ‘1989’, ‘1990’, ‘1991’, ‘1992’
db ‘1993’, ‘1994’, ‘1995’
dd 16, 22, 382, 1356, 2390, 8000, 16000, 24486, 50065, 97497, 140417, 197514
dd 345980, 590827, 803530, 1183000, 1843000, 2759000, 3753000, 4649000, 5937000
dw 3, 7, 9, 13, 28, 38, 130, 220, 476, 778, 1001, 1442, 2258, 2793, 4037, 5635, 8226
dw 11542, 14430, 15257, 17800
data ends
table segment
db 21 dup ('year summ ne ?? ')
table ends
code segment
start: mov ax, data
mov ds, ax
mov ax, table
mov es, ax
mov si, 0
mov di, 0
mov cx, 21 ;
s:mov al,[bx]
mov es:[di],al
mov al,[bx+1]
mov es:[di+1],al
mov al,[bx+2]
mov es:[di+2],al
mov al,[bx+3]
mov es:[di+3],al
mov ax,54h[bx]
mov dx,56h[bx]
mov es:5h[di],ax
mov es:7h[di],dx
mov ax,0a8h[si]
mov es:0ah[di],ax
mov ax,54h[bx]
div word ptr ds:0a8h[si]
mov es:0dh[di],ax
add bx,4
add si,2
add di,16
loop s
mov ax, 4c00H
int 21H
code ends
end start
步骤:(1):
1)、进入Debug程序
2)、运行edit,在edit中编辑程序。
3)、将程序保存到当前目录命名为1.asm,退出edit,结束对源程序的编辑。
4)、将源程序编译,生成目标文件。
5)、对目标文件连接,生成可执行文件
结果(1):
三:实验过程中出现的问题及解决方法
实验中出现很多问题,弄了很久,一直没搞出正确结果,网上查了资料加上和同学一起讨论最终弄明白了。
四:实验总结
通过这次实验我巩固了寻址方式的使用:直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址。通过此次实验也认识到自己还有很多不足,通过查阅资料加上和同学讨论才真正理解此实验。只有不断练习才能真正理解和掌握知识。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)