51单片机高精度除法程序及使用

2023-05-04 01:38:10   第一文档网     [ 字体: ] [ 阅读: ] [ 文档下载 ]
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。下载word有问题请添加QQ:admin处理,感谢您的支持与谅解。点击这里给我发消息

#第一文档网# 导语】以下是®第一文档网的小编为您整理的《51单片机高精度除法程序及使用》,欢迎阅读!
除法,高精度,单片机,程序,使用

51 单片机高精度除法程序及使用

科技人员在开发 51 单片机应用系统过程中,往往遇到多字节除法及倒数 问题。但目前一些资料中所介绍的有关程序,复杂且功能单一、精度低。本人 在研制((GZ93 多功能程控测试仪》过程中,自行设计的 4 字节除 4 字节程序具 有功能多、精度高、简短、运行速度快等特点,可用于求 4 字节倒数,求商的 整数(结果为 4 字节),求商的小数部分(结果为 4 字节),调用两次即可求 8 字节 商。 一、使用方法 1.求商的整数 (1)16 进制被除数送 51 内部 RAM 20( ) 23(高位)单元,除数送 50(低位) 53(高位)单元,扩充单元 24 27 清零。 (2)调子程序 DIV (3)20(低位) 23(商位)单元为所求商,24 27 单元为 余数。 2.求八字节商 (1)先求商的整数部分 方法同上,然后将 20 23 单元 的整数商送其它单元保存。 (2)求商的小数部分 20 23 单元清零;其余单元 内容不变;调 DIV 子程序;小数商在 23 20 单元中,小数点位于 23 单元前。 3.求倒数

(1)20 23 单元及 25 27 单元清零,01H 24 单元,除数送

50(低位) 53(高位)单元。 (2)调子程序 DIV (3)倒数在 23 20 单元,小数 点位于 23 单元前。 二、程序清单 ORG 0500HDIV: CLR 7EH MOV R0,#50H MOV R7,#03HDV0: MOV A,@R0 INC R0 ORL A,@R0 JNZ DV1 DJNZ R7,DV0 SETB 7EH SJMP DV8DV1: MOV R6,#20H CLRCDV2: MOV R0,#20H MOV R7,#08HDV3: MOV A,@R0 RLC A MOV @R0,A INC R0 DJNZ R7,DV3 MOV 0F0H,C CLR C MOV R0,#24H MOV R1,#50H MOV R7,#04HDV4: MOV A,@R0 SUB A,@R1 MOV @R0,A INC R0 INC Rl DJNZ R7,DV4 JNB 0F0H,DV5 CLR C SJMP DV6DV5: JNC DV6 MOV A,24H ADD A,50H MOV 24H,A MOV A,25H ADDC A,51H MOV 25H,A MOV A,26H ADDC A,52H MOV 26H,A MOV A,27H ADDC A,53H MOV 27H,ADV6: CPL C DJNZ R6,DV2 MOV R0,#20H MOV


本文来源:https://www.dywdw.cn/d512c49f7275a417866fb84ae45c3b3567ecdd87.html

相关推荐
推荐阅读