6.包含多个段的程序

1.   
assume cs:code,ds:data,ss:stack
      data segment
        ds 0123h,1234h,2345h,3456h,4567h,5678h,6789h,789Ah
      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,20h   ;设置ss:sp指向stack的栈顶
        mov ax,data
        mov ds,ax    ;ds指向data段
        mov bx,0     ;ds:bx指向打他段中的第一个单元
        mov cx,8
     s: push [bx]
        add bx,2
        loop s       ;以上将data中的0~15单元压入栈内
        mov bx,0
        mov cx,8
    s0: pop [bx]
        add bx,2
        loop s0      ;以上依次出栈8字型数据

        mov ax,4c00h
        int 21h
    code ends
end start   
原文地址:https://www.cnblogs.com/zxj159/p/2811391.html