24位二进制除以16位二进制除法汇编程序

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

24位二进制除以16位二进制除法汇编程序2009-11-1313:56将(R2R3R4R5)除于(R6R7),商送(R4R5),余数送(R2R3)。模拟手算方法:1)从被除数高位开始对齐除数,比较。2)若前者大于或等于后者,商位为1,并把被除数减除数,形成部分余数。若前者小于后者,商位为0。3)部分余数左移一位,商也左移一位。4)整个余数若小于除数,则退出。5)部分余数从高位开始与除数比较6)到第2)步。若被除数高16位大于或等于除数,则溢出。NDIV:MOVA,R3CLRCSUBBA,R7;先比较是否发生溢出MOVA,R2SUBBA,R6JNCNDVE1;溢出MOVB,#16;无溢出,16位NDVL1:CLRCMOVA,R5RLCAMOVR5,AMOVA,R4RLCAMOVR4,A;被除数左移一位,同时也是商位左移一位MOVA,R3RLCAMOVR3,AMOVA,R2RLCAMOVR2,AMOVF0,C;保存移出的最高位CLRCMOVA,R3SUBBA,R7;比较部分余数与除数MOVR1,AMOVA,R2SUBBA,R6JBF0,NDVM1;上次最高位=1,则商位=1JCNDVD1;部分余数小于除数,则商位=0NDVM1:MOVR2,AMOVA,R1MOVR3,A;回送减法结果INCR5;商位=1NDVD1:DJNZB,NDVL1;循环16次CLRF0RETNDVE1:SETBF0;溢出标志RET

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功