Chinaunix首页 | 论坛 | 博客
  • 博客访问: 675261
  • 博文数量: 156
  • 博客积分: 3402
  • 博客等级: 中校
  • 技术积分: 1639
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-13 14:06
个人简介

业余编程爱好者

文章分类

全部博文(156)

文章存档

2014年(1)

2013年(13)

2012年(46)

2011年(38)

2010年(58)

分类: WINDOWS

2011-12-17 15:33:58

《汇编语言》实验10.2,无溢出的除法子程序
        org     0100h
start@:
        mov     ax,cs
        mov     ds,ax
        mov     ss,ax
        mov     sp,stackStart@
        mov     ax,4240h                              ;dword型数据的低16位
        mov     dx,000fh                              ;dword型数据的高16位
        mov     cx,67f4h                              ;除数
        call    divdw

        mov     ax,4c00h
        int     21h
end@:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
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
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;执行后,dx保存结果的高16位,ax保存结果的低16位,cx保存余数
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
stackEnd@:
        db 100 dup ('*')                               ;堆栈区初始化
stackStart@: 
阅读(1344) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~