汇编网首页登录博客注册
ztf770710的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2013-02-28 22:04] 实验13第2题

assume cs:code

code segment
  start:   mov ax,cs
           mov ds,ax
           mov si,offset s0                 ;设置ds:si指向源地址
           mov ax,0 
           mov es,ax
           mov di,200h                      ;设置es:di指向目的地址
           mov cx,offset s0end-offset s0    ;设置cx为传输长度
           cld                              ;设置传输方向为正
           rep movsb

           mov ax,0
           mov es,ax
           mov word ptr es:[7ch*4],200h
           mov word ptr es:[7ch*4+2],0      ;设置中断向量表

           mov ax,4c00h
           int 21h

     s0:   push bp                
           mov bp,sp           ;访问栈,使用bp,其段地址默认为ss
           dec cx              
           cmp cx,0         
           je change           ;(cx)-(cx)-1,如(cx)=0,则跳转;此处可用jcxz,更简便
           add [bp+2],bx       ;主程序内需循环段的末地址加上转移位移,为段首地址
change:    pop bp
           iret                ;恢复cs、ip、flag
  s0end:   nop

code ends
end start
评论次数(0)  |  浏览次数(385)  |  类型(汇编作业) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码