|  | 
 
| 
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  复制代码;--------------中断实现循环------
assume cs:code
data segment
        
        
first:
        push bp
        dec cx
        cmp cx,0
        je over
        mov bp,sp
        sub [bp+2],bx ;修改栈中IP的值 ,返回时还原到标号那一步
over:
        pop bp
        iret
last:        
        nop
data ends
code segment 
start:
        mov ax,data 
        mov ds,ax
        ;安装7ch中断
        mov si,offset first ;首地址
        mov ax,0
        mov es,ax
        mov di,200h ;指定安装地址
        mov cx, offset last - offset first    ;长度
        cld
        rep movsb
        ;写入中断向量表地址
        mov word ptr es:[7ch*4+2], 0
        mov word ptr es:[7ch*4], 200h
        
        ;--------调用----
        mov ax,0b800h;字符指定显示区
        mov es,ax
        mov di,12*160    ;12行  每行160字节
        mov bx,offset  ok- offset s ;参数 - 位移
        mov cx,80 ;参数 
s:      ;循环体
        mov byte ptr es:[di],'!'
        add di,2
        int 7ch
         
        
ok:     
        mov ax,4c00h
        int 21h        
        
code ends
end start  
 | 
 评分
查看全部评分
 |