导航:首页 > 源码编译 > 编译器无法做乘法运算怎么办

编译器无法做乘法运算怎么办

发布时间:2023-06-03 12:41:39

⑴ 我在用51单片机运算浮点数的乘法时出现以下情况如何解决,编译器为KEIL2,就是乘完后的结果大于65535的...

浮点数本身就有个精度问题
C51的float浮点型只有7位有效数字,符合IEEE-754标准
浮点运算相比整数运算是很费CPU的

如果long也放不下 可以用字符大数的计算方法,不过很麻烦

⑵ 求C语言代码:单片机没有乘除法,如何实现乘除法运算

单片机乘除法要用到ACC与B寄存器
所以在中断程序中:

ACC++;


TH0=(65536-50000)/256;
TL0=(65536-50000)%256;


最后的两个除法把ACC的值改变了。把变量ACC改为一个其它的全局变量就好了。(比如定义一个全局变量unsigned char n;把ACC改为n;)

C语言编程中,变量最好让编译器自己处理,不要直接用某一个寄存器。

⑶ 求C语言代码:单片机没有乘除法,如何实现乘除法运算

单片机乘除法要用到ACC与B寄存器
所以在中断程序中:

ACC++;


TH0=(65536-50000)/256;
TL0=(65536-50000)%256;

最后的两个除法把ACC的值改变了。把变量ACC改为一个其它的全局变量就好了。(比如定义一个全局变量unsigned
char
n;把ACC改为n;)
C语言编程中,变量最好让编译器自己处理,不要直接用某一个寄存器。

阅读全文

与编译器无法做乘法运算怎么办相关的资料

热点内容
桌面两个微信怎么都加密码 浏览:276
长沙单身程序员 浏览:883
服务器下载异常是因为什么 浏览:703
java防刷 浏览:842
3dmax取消当前命令 浏览:359
显示当前模式下所有可执行的命令 浏览:758
为什么程序员拿了股份还要高薪 浏览:946
电脑运行命令里的记录能删吗 浏览:697
linuxwss 浏览:848
一个软件需要登录服务器地址 浏览:923
哪里有解压程序 浏览:299
java静态方法内存 浏览:545
我的世界ec服务器如何带vip 浏览:737
什么是由解析器域名和服务器构成 浏览:414
自动识别电影信息源码 浏览:850
柱筋箍筋加密区怎么算 浏览:48
钢筋中加密15倍是什么意思 浏览:366
esc加密算法 浏览:518
linux运行exe命令 浏览:124
一级建造师管理pdf 浏览:720