关于rnd/trunc/rnd /rnd-的具体区别和用法
郑志武
发布于2013-03-01 23:32
19
0
标签:
西门子中有4个取整指令,rnd/trunc/rnd+/rnd-,同一个浮点数用这4个指令转换后感觉没有啥变化啊,不知道这四种的具体区别在哪里啊感谢!
佳答案
1、rnd取整:使用该指令,可以将32位ieee浮点数转换成为一个32位整数(双整数),并将结果取整为近的整数。如果被转换数字的小数部分位于奇数和偶数结果中间,则该指令选择偶数结果。例:
"100.5"转换后"+100";"-100.5"转换后"-100";
2、trunc截尾取整:使用该指令,可以将32位ieee浮点数转换成为一个32位整数(双整数)。其结果为被转换浮点数的整数部分(ieee取整方式“截尾取整”)。例:
"100.5"转换后"+100";"-100.5"转换后"-100";
3、rnd+取整为较大的双整数:使用该指令,可以将32位ieee浮点数转换成为一个32位整数(双整数),并将结果取整为大于或等于该浮点数的小整数(ieee取整方式“向上取整”)。例:100.5"转换后"+101";"-100.5"转换后"-100";
4、rnd-取整为较小的双整数:。使用该指令,可以将32位ieee浮点数转换成为一个32位整数(双整数),并将结果取整为小于或等于该浮点数的大整数(ieee取整方式“向下取整”)。例:100.5"转换后"+100";"-100.5"转换后"-101";