實數(shù)和長整數(shù)間的轉換實例——西門子S7系列PLC
指令 | 說 明 |
RND | 將實數(shù)化整為最接近的整數(shù)。 |
RND+ | 將實數(shù)化整為大于或等于該實數(shù)的最小整數(shù) |
RND- | 將實數(shù)化整為小于或等于該實數(shù)的最大整數(shù) |
TRUNC | 取實數(shù)的整數(shù)部分(截尾取整) |
因為實數(shù)的數(shù)值范圍遠大于32位整數(shù),所以有的實數(shù)不能成功地轉換為32位整數(shù)。如果被轉換的實數(shù)格式非法或超出了32位整數(shù)的表示范圍,則在累加器1中得不到有效結果,而且狀態(tài)字中的OV和OS被置1。
上面的指令都是將累加器1中的實數(shù)化整為32位整數(shù),因化整的規(guī)則不同,所以在累加器1中得到的結果也不一致,如下表
執(zhí)行的 指令 | 累加器l內容 | 說 明 | |
化整前 | 化整結果 | ||
RND | +99.5 | +100 | 將實數(shù)化整為最接近的整數(shù) |
RND+ | +99.5 | +100 | 將實數(shù)化整為大于或等于該實數(shù)的最小整數(shù) |
RND- | +99.5 | +99 | 將實數(shù)化整為小于或等于該實數(shù)的最大整數(shù) |
TRUNC | +99.5 | +99 | 只取實數(shù)的整數(shù)部分(截尾取整) |
文章版權歸西部工控xbgk所有,未經(jīng)許可不得轉載。