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

我的博客

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

[2010-07-18 18:08] 练习:一个延迟程序

写了一个简单的sleep程序, 输入范围10秒以内的,一个练习而已。
;----------------------------------------------------
  1 assume  cs:code
  2 data    segment
  3 msg     db      'input a less than 10','$'
  4 data    ends
  5 code    segment
  6 start:
  7         mov ax,es:[82h]
  8         cmp ah,0dh
  9         jz ok
 10         jmp err
 11 ok:     cmp al,30h
 12         jb err
 13         cmp al,39h
 14         ja err
 15         sub al,30h
 16         and ax,0fh
 17         mov bx,18
 18         mul bx
 19         mov bx,ax
 20         call sleep
 21 done:   mov ah,4ch
 22         int 21h
 23 ;
 24 sleep   proc near uses ax bx dx
 25         mov ah,0
 26         int 1ah
 27         add dx,bx
 28         mov bx,dx
 29 delay:  int 1ah
 30         cmp dx,bx
 31         jne delay
 32         ret
 33 sleep   endp
 34 ;
 35 err:    mov ax,data
 36         mov ds,ax
 37         mov dx,offset msg
 38         mov ah,9
 39         int 21h
 40         jmp done
 41 code    ends
 42 end     start
;----------------------------------------------------
评论次数(0)  |  浏览次数(358)  |  类型(程序与练习) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码