我这里有一个比较容易理解的: ;/////////////////////////////////////////////////////////////////////// ;函数功能:两字节除以两字节,商存在r0【低】,r7【高】 ; 余数存在r2【低】,r3【高】 ;入口参数:r2【除数低字节】,r3【除数高字节】;r4【被除数低字节】,r5【被除数高字节】 ;出口参数:r0【商低】,r7【商高】,r2【余低】,r3【余高】 ;日 期:2005年6月15日 ;作 者:by 黄青强 div: mov r0,#00h ;商低字节 mov r7,#00h ;商高字节 next0: clr c mov a,r2 subb a,r4 mov r2,a mov a,r3 subb a,r5 mov r3,a jc next1 cjne r0,#0ffh,next2 ; mov r0,#00h inc r7 ajmp next0 ret next2: inc r0 ajmp next0 ret next1: mov a,r3 ;求余数高字节 addc a,r5 mov r3,a
mov a,r2 ;求余数低字节 add a,r4 mov r2,a clr c ret |