關(guān)于rnd/trunc/rnd /rnd-的具體區(qū)別和用法
鄭志武
發(fā)布于2013-03-01 23:32
19
0
標(biāo)簽:
西門子中有4個(gè)取整指令,rnd/trunc/rnd+/rnd-,同一個(gè)浮點(diǎn)數(shù)用這4個(gè)指令轉(zhuǎn)換后感覺沒有啥變化啊,不知道這四種的具體區(qū)別在哪里啊感謝!
佳答案
1、rnd取整:使用該指令,可以將32位ieee浮點(diǎn)數(shù)轉(zhuǎn)換成為一個(gè)32位整數(shù)(雙整數(shù)),并將結(jié)果取整為近的整數(shù)。如果被轉(zhuǎn)換數(shù)字的小數(shù)部分位于奇數(shù)和偶數(shù)結(jié)果中間,則該指令選擇偶數(shù)結(jié)果。例:
"100.5"轉(zhuǎn)換后"+100";"-100.5"轉(zhuǎn)換后"-100";
2、trunc截尾取整:使用該指令,可以將32位ieee浮點(diǎn)數(shù)轉(zhuǎn)換成為一個(gè)32位整數(shù)(雙整數(shù))。其結(jié)果為被轉(zhuǎn)換浮點(diǎn)數(shù)的整數(shù)部分(ieee取整方式“截尾取整”)。例:
"100.5"轉(zhuǎn)換后"+100";"-100.5"轉(zhuǎn)換后"-100";
3、rnd+取整為較大的雙整數(shù):使用該指令,可以將32位ieee浮點(diǎn)數(shù)轉(zhuǎn)換成為一個(gè)32位整數(shù)(雙整數(shù)),并將結(jié)果取整為大于或等于該浮點(diǎn)數(shù)的小整數(shù)(ieee取整方式“向上取整”)。例:100.5"轉(zhuǎn)換后"+101";"-100.5"轉(zhuǎn)換后"-100";
4、rnd-取整為較小的雙整數(shù):。使用該指令,可以將32位ieee浮點(diǎn)數(shù)轉(zhuǎn)換成為一個(gè)32位整數(shù)(雙整數(shù)),并將結(jié)果取整為小于或等于該浮點(diǎn)數(shù)的大整數(shù)(ieee取整方式“向下取整”)。例:100.5"轉(zhuǎn)換后"+100";"-100.5"轉(zhuǎn)換后"-101";