汇编程序17:实验5(6)逆序赋值段数据
1 assume cs:code 2 3 a segment 4 dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffh 5 a ends 6 7 b segment 8 dw 0,0,0,0,0,0,0,0 9 b ends 10 11 code segment 12 start: 13 mov ax,0020h //13~15行代码在已知安全空间开辟一个大小为20字节的栈,用于后面逆序储存 14 mov ss,ax 15 mov sp,0020h 16 mov ax,a 17 mov ds,ax //定义第一个段 18 mov ax,b 19 mov es,ax //定义第二个段 20 mov bx,0 //20,26行代码代表偏移地址 21 mov cx,8 //21,27行代码用寄存器cx来存放loop次数 22 s: 23 push ds:[bx] //从第一个段入栈 24 add bx,2 25 loop s 26 mov bx,0 27 mov cx,8 28 s0: 29 pop es:[bx] //从第二个段出栈 30 add bx,2 31 loop s0 32 mov ax,4c00h 33 int 21h 34 code ends 35 36 end start