1 assume cs:code 2 3 code segment 4 start: 5 mov ax, 4240h 6 mov dx, 000fh 7 mov cx, 0ah 8 9 call divdw 10 11 mov ax, 4c00h 12 int 21h 13 14 ; 名称:divdw 15 ; 功能:进行不会产生溢出的除法运算,被除数为dword型,除数为word型号,结果为dword型号 16 ; 参数:(ax)=dword型数据的低16位 17 ; (dx)=dword型数据的高16位 18 ; (cx)=除数 19 ; 返回:(dx)=结果的高16位,(ax)=结果的低16位 20 ; (cx)=余数 21 divdw: ; 子程序定义开始 22 push ax ; 低16位先保存 23 24 mov ax, dx ; ax值为高16为 25 26 mov dx, 0 ; dx置零 27 div cx ; H/N 28 29 mov bx, ax ; ax,bx的值(int)H/N,dx的值为(rem)H/N 30 31 pop ax ; 处理低16位 32 div cx ; 高16位:dx的值为(rem)H/N,低16位:ax 33 34 mov cx, dx 35 mov dx, bx 36 37 ret 38 code ends 39 end start
转载于:https://www.cnblogs.com/dennisOne/archive/2012/10/23/2735343.html