汇编实验五

 

20171308171 胡欣怡

一、实验目的
1. 理解和掌握将数据、代码、栈放入不同段的程序的编写和调试
2. 理解具有多个段的汇编源程序对应的目标程序执行时,内存分配方式
二、实验准备
1. 结合第 6 章教材和课件,复习第 6 章内容
2. 复习第 3 章「栈」的知识
三、实验内容
教材 133 实验 5
ps:
1. 实验 5 相关提示见本文档最后一部分「附:实验 5 提示&说明」
2. 为提高实验效率,我已将实验 5 的程序框架准备好,可以从课程公邮→文件中心→
实验文件夹,下载实验 5 程序框架。
四、实验结论
实验任务(1)~(4),直接在教材上填写实验后通过运行、调试观察到的结果,以及由此得
到的结论,以拍照或直接在博客中录入方式,给出填写的结论。对结论得出的过程及调试过
程的检查,采用随机抽点现场操作演示并回答的方式检查。

1.

assume cs:code, ds:data, ss:stack
data segment
dw 0123h, 0456h, 0789h, 0abch, 0defh, 0fedh, 0cbah, 0987h
data ends

stack segment
dw 0, 0, 0, 0, 0, 0, 0, 0
stack ends

code segment
start: mov ax,stack
mov ss, ax
mov sp,16

mov ax, data
mov ds, ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h

code ends
end start

 

 2.

assume cs:code, ds:data, ss:stack
data segment
dw 0123h, 0456h
data ends

stack segment
dw 0, 0
stack ends

code segment
start: mov ax,stack
mov ss, ax
mov sp,16

mov ax, data
mov ds, ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h

code ends
end start

 

 

3.4.

assume cs:code, ds:data, ss:stack

code segment
start: mov ax,stack
mov ss, ax
mov sp,16

mov ax, data
mov ds, ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h

code ends
data segment
dw 0123h, 0456h
data ends

stack segment
dw 0,0
stack ends
end start

 

 

实验任务(5),要求在博客中给出如下内容:
(1) 汇编程序源代码
(2) 在 debug 中调试程序截图,截图中包括如下信息:
① 在实现数据相加前,逻辑段 c 的 8 个字节
② 执行完实现加运算的代码后,逻辑段 c 的 8 个字节
(3) 根据①和②的调试,验证是否正确的实现数据相加。

 

assume cs:code

a segment
db 1,2,3,4,5,6,7,8
a ends

b segment
db 1,2,3,4,5,6,7,8
b ends

c segment ; 在集成软件环境中,请将此处的段名称由c→改为c1或其它名称
db 8 dup(0)
c ends ; 改的时候要成对一起修改
code segment
start:
;?
code ends
end start

中间空缺的程序如上

编译连接后

可见成功相加

 

实验任务(6), 要求在博客中给出如下内容:

(1) 汇编程序源代码
(2) 在 debug 中调试程序截图,截图中包括如下信息:
① 在 push 操作执行前,查看逻辑段 b 的 8 个字单元信息截图
② 执行 push 操作,然后再次查看逻辑段 b 的 8 个子单元信息截图
(3) 根据①和②的调试,验证是否正确的实现数据相加。

assume cs:code
a segment
dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh
a ends

b segment
dw 8 dup(0)
b ends

code segment
start:
;?
code ends
end start

由上图可知逆序存储成功

五、总结与体会 此部分书写内容: (在本次实验中你的收获、发现、体会、尚存的问题,或其它你愿意反馈或分享的内容)

经过这次实验发现我对于有的汇编命令的运用还不够熟练还需要进一步加深印象

 

posted @ 2018-12-02 17:09  jinevol  阅读(201)  评论(0)    收藏  举报