题目:
分析:
1.也就是把dw数据拆成两个db数据和db相除。
2.注意参数的传入和传出。
代码:
assume cs:code,ss:stack
stack segment
db 16 dup (0)
stack ends
;计算dw型除以db型,结果是dw型的除法运算
code segment
start:
mov ax,4240H ;被除数的低位
mov dx,000FH ;被除数的高位
mov cx,0AH
call divdw
mov ax,4C00H
int 21h
divdw:
;先计算高位,再计算低位。低位先入栈
push ax
mov ax,dx
mov dx,0 ;计算dw型 除以db型 结果是 db型除法运算
div cx ;结果是dx 0 ax 商 cx 余数
mov bx,ax ;保存ax
pop ax ;计算低位 dw型除以db型 结果是db型除法运算
div cx
mov cx,dx ;余数保存在cx里
mov dx,bx ;dx保存的是最终结果的高位、
ret
code ends
end start
结果: