. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->INT指令
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  实验13  [待解决] 回复[ 2次 ]   点击[ 352次 ]  
folkrock
[帖 主]   [ 发表时间:2009-02-11 16:00 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-03-30 11:10
assume cs:code

data segment
        db "welcome to masm!",0
data ends
        
code segment

start:

        mov ax,cs
        mov ds,ax
        mov si,offset do7ch

        mov ax,0
        mov es,ax
        mov di,200h
        
        mov cx,offset do7chend - offset do7ch
        cld
        rep movsb

        mov word ptr es:[7ch*4],200h
        mov word ptr es:[7ch*4+2],0        
        
        mov dh,10
        mov dl,10
        mov cl,2
        
        mov ax,data
        mov ds,ax
        mov si,0
        
        int 7ch

        mov ax,4c00h
        int 21h

do7ch:
        push ax
        push bx
        push di
        
        mov ax,0b800h
        mov es,ax
        mov di,0
        
        mov al,0a0h
        mul dh
        mov bx,ax
        
        mov al,02h
        mul dl
        add bx,ax

do7ch1:
        mov al,[si]
        cmp al,0
        je do7chret
        mov es:[bx+di],al
        mov es:[bx+di+1],cl
        inc si
        add di,2
        jmp short do7ch1

do7chret:        
        pop di
        pop bx
        pop ax
        iret
        
do7chend:
        nop        
        
code ends

end start
folkrock
[第1楼]   [ 回复时间:2009-02-11 16:36 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-03-30 11:10
assume cs:code
        
code segment

start:
        mov ax,cs
        mov ds,ax
        mov si,offset do7ch
        
        mov ax,0
        mov es,ax
        mov di,200h
        
        mov cx,offset do7chend - offset do7ch
        cld
        rep movsb
        
        mov word ptr es:[7ch*4],200h
        mov word ptr es:[7ch*4+2],0
        
        mov ax,0b800h
        mov es,ax
        mov di,160*12
        mov bx,offset s - offset se
        mov cx,80
s:
        mov byte ptr es:[di],'!'
        add di,2
        int 7ch
se:
        nop
        mov ax,4c00h
        int 21h

do7ch:        
        push bp
        mov bp,sp
        dec cx
        jcxz do7ch1
        add [bp+2],bx

do7ch1:
        pop bp
        iret
        

do7chend:
        nop        
        
code ends

end start
folkrock
[第2楼]   [ 回复时间:2009-02-11 16:36 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-03-30 11:10
assume cs:code

code segment
        s1:        db 'Good,better,best,','$'
        s2:        db 'Never let it rest,','$'
        s3:        db 'Till good is better,','$'
        s4:        db 'And better,best.','$'
        s:         dw offset s1,offset s2,offset s3,offset s4
        row:       db 2,4,6,8

start:
        mov ax,cs
        mov ds,ax
        mov bx,offset s
        mov si,offset row
        mov cx,4
ok:
        mov ah,2
        mov bh,0
        mov dh,[si]
        mov dl,0

        int 10h
        
        mov dx,[bx]
        mov ah,9
        int 21h
        
        inc si
        add bx,2
        loop ok

        mov ax,4c00h
        int 21h
        
code ends
        
end start
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved