实验五

Posted on 2018-11-25 17:24  zwlovexx  阅读(98)  评论(0)    收藏  举报

实验任务1~4

 

实验任务5

(1) 汇编程序源代码

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:mov ax,a
mov ds,ax
mov ax,c
mov es,ax
mov cx,8
mov bx,0
s:mov ax,0
add al,ds:[bx]
add al,ds:[bx+16]
mov es:[bx],al
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end start

(2) 在debug中调试程序截图,截图中包括如下信息:

① 在实现数据相加前,逻辑段c的8个字节

 

② 执行完实现加运算的代码后,逻辑段c的8个字节

 

(3) 根据①和②的调试,验证是否正确的实现数据相加。 

已实现数据相加

实验任务6

(1) 汇编程序源代码

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:mov ax,a
mov ds,ax
mov ax,b
mov ss,axmov sp,10h
mov bx,0
mov cx,8
s:push ds:[bx]
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start


(2) 在debug中调试程序截图,截图中包括如下信息:

① 在push操作执行前,查看逻辑段b的8个字单元信息截图

 

② 执行 push操作,然后再次查看逻辑段b的8个子单元信息截图

(3) 根据①和②的调试,验证是否正确的实现数据相加。

 已实现数据相加

总结与体会:

 

       这次实验有点多,虽然前三个代码都准备好了,调试过程也快。还有就是实验四想了好久也不知道,查了资料才明白。