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

我的博客

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

[2010-08-26 09:07] 实验十(第三个)调了很久。。。95行

图片载入中
assume cs:code,ds:data
data segment 
db 10 dup(0)
data ends
code segment
start:mov ax,12666
      mov bx,data
      mov ds,bx
      mov si,0
      call dtoc

  s2: mov dh,8
      mov dl,3
      mov cl,2
      call show_str 
      mov ax,4c00h
      int 21h
dtoc: push ax
      push cx
      push dx
      push si
change_1:mov cx,10  ;设置除数
       mov dx,0   ;把dx清零,好调用dividw
       call divdw
       jcxz ok_1    ;余数为0时,结束循环
       add cx,30h 
       mov [si],cl
       push [si]
       inc si
       jmp short change_1
ok_1 :
       mov cx,si
       mov si,0
   s_2:pop [si]
       inc si
       loop s_2
       pop si
       pop dx
       pop cx
       pop ax
       jmp s2

divdw:          ;防止除法溢出的函数
mov bx,ax
mov ax,dx
mov dx,0
div cx

push ax
mov ax,bx
div cx
mov cx,dx
pop dx
ret  
   
show_str:        ;显示字符的函数
push si
push ax
push bx
push cx
push dx
mov ax,0b800h
mov es,ax

mov bx,0
mov di,0
mov al,160
mul dh
add bx,ax

mov al,2
mul dl
add bx,ax

mov dl,cl
change:  
mov cl,[si]
mov ch,0
jcxz ok
mov al,[si]
mov es:[bx+di],al
mov es:[bx+di+1],dl
add di,2
inc si
jmp short change
ok:pop dx
pop cx
pop bx
pop ax
pop si
ret


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