实验五
一、
1、data段:0123h,0456h,0789h,0abch,0defh,0fdeh,0cbah,0897h
2、返回前:cs=076c,ss=076b,ds=076a
3、code段,段地址为X,data段为X-2,stack段为X-1
二、
1、data段仍为0123h,0456h
2、返回前cs=076c,ss=076b,ds=076a
3、code X,dataX-2,stack X-1
4、设段中数据占n个字节,加载后,实际占16*(n/16+1)
三、
1、data段不变
2、返回前cs=076a,ss=076e,ds=076d
3、code X,data X+3,stack X+4
四、可以运行
五、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 db 0,0,0,0,0,0,0,0 c ends code segment start: mov ax,a mov ds,ax mov bx,0 mov cx,8 s: mov al,[bx] mov [bx+20h],al mov al,[bx+10h] add [bx+20h],al inc bx loop s mov ax,4c00h int 21h code ends end start
2、(1)数据相加前
(2)执行程序后
3、验证正确
六、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 0,0,0,0,0,0,0,0,0 b ends code segment start: mov ax,a mov ds,ax mov ax,b mov ss,ax mov sp,16 mov bx,0 mov cx,8 s: push [bx] inc bx inc bx loop s mov ax,4c00h int 21h code ends end start
2、(1)push前
(2)push后
3、验证正确
七、
区分不同段使程序更简洁,汇编指令的活用使程序内容多样化,相同作用的程序可以由不同的代码得到