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

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  相信自己,没有什么是不可能的.
  • 『姓名』:保密
  • 『性别』:男『发送消息
  • 个人说明:我是一个电脑爱好者,同时也喜欢音乐,喜欢静静地思考,不喜欢体育,也不喜欢太喧嚣的地方。
  • 详细信息『加为好友』
学习动态
文章收藏
友情链接

[2009-09-08 14:00] 用7ch中断,实现jmp near ptr 功能(检测点13.1(2))

;利用7ch中断,实现jmp near ptr s 功能
assume cs:code,ds:data
data segment
        db 'manchengshiwodeguxianga',0
data ends
;参数:传递字符串的首地址
code segment
start:        mov ax,cs
        mov ds,ax
        mov si,offset s
        mov ax,0
        mov es,ax
        mov di,200h
        mov cx,offset s1-offset s
        cld
        rep movsb
        mov ax,0
        mov ds,ax
        mov word ptr ds:[7ch*4],200h
        mov word ptr ds:[7ch*4+2],0h        
        mov ax,data
        mov ds,ax
        mov si,0
        MOV ax,0b800h
        mov es,ax
        mov di,12*160
ps:        mov cl,[si]
        mov ch,0
        jcxz p
        and cl,11011111b
        mov [si],cl
        mov es:[di],cl
        add di,2
        inc si
        
        int 7ch
p:        nop
        
        mov ax,4c00h
        int 21h
s:        push bp;将bp入栈保存,如果前面没有用到这个寄存器的话可以不保存
        mov bx,offset ps-offset p
        mov bp,sp;取得当前栈顶位置 
        add [bp+2],bx
        pop bp
        iret
s1:        nop
        

        
code ends
end start
评论次数(1)  |  浏览次数(558)  |  类型(汇编作业) |  收藏此文  | 

[  wsrf   发表于  2009-09-10 08:34  ]

没有问题。

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码