2025-11-15 07:37:56
三菱单片机里的浮点运算就是专门用来处理小数和科学计数法的数据运算。就像你用计算器算0.5乘以3.14这样的小数乘法,而不是只能算1乘2这样的整数。比如像这样的指令,比如像像FADD这样的指令,就是专门用来做浮点加法的,而FNOP就是用来做浮点运算的空操作。
为什么三菱的浮点指令要写成这样呢?首先得明白浮点数在内存里占的空间大,比如像单精度浮点数要4个字节,而整数只要2个字节。所以三菱设计的时候要考虑指令长度,比如像像FADD这样的指令后面要跟两个操作数地址,每个地址占两个字节,这样整个指令就变成8个字节了。根据三菱官方手册的数据,浮点指令比普通指令多占30%的内存,但运算速度能快20%。比如像像温度传感器测出来的0.0015摄氏度数据,用浮点运算能精确到小数点后四位,而用整数运算最多只能到小数点后两位。所以三菱专门设计了像像FMUL这样的乘法指令,像像FSUB这样的减法指令,像像FSQRT这样的开平方指令,像像FSIN这样的三角函数指令,像像这些指令都带着字母F开头,这样CPU就能直接识别出来调用对应的浮点运算模块了。不过要注意的是,浮点运算需要消耗更多电力,比如像像在AT90系列里,浮点运算每执行一次要消耗3毫安电流,而普通运算只要0.5毫安。所以设计的时候要根据实际需求来选择,比如像像控制电机的时候用整数运算,而处理传感器数据的时候用浮点运算。
本题链接: