陽春節拍
級別: 探索解密
|
信捷的四則運算的結果占用空間會翻倍,所以不可能出現溢出錯誤。 但是連續計算怎么搞呢? 比如前級計算結果超出乘數的字節數,或者計算結果干脆是負數 翻了下手冊,沒找到信捷雙字整數轉單字整數的指令,這應該是很基本的指令吧 |
---|---|
|
陽春節拍
級別: 探索解密
|
轉不了就不操作并置報警位唄,其他品牌plc都這樣做的呀。 雙字轉單字是剛需,自己轉的話,要同時做值是否超出單字,是否是負數的判斷,負數的雙字轉單字有點麻煩,程序有點復雜。應該是直接提供指令,畢竟單字轉雙字那么簡單都有指令 |
---|---|
|
陽春節拍
級別: 探索解密
|
32位乘輸出的是64位數據,后繼全用32位指令也是有風險的。 C語言里16位乘積超限是怎么個處理方式?是報錯停止運行,還是直接僅取低字,還是給出限值 |
---|---|
|
陽春節拍
級別: 探索解密
|
取二維表的某個地址,偏移量需要使用行號乘以總列數再加上列號,,,16位乘后變成了32位,你怎么加16位的列號?加完了,需要使用字偏移,你雙字的偏移數怎么用? 在主程序中絕對不溢出時能直接將32位數絕對地址當16位數絕對地址用,你在pou梯形圖里怎么辦?pou里邊絕對地址和變量是不能混用的,16位和32位混用更不可能 別家plc不但提供雙字到字的轉換,甚至西門子還提供有由指令來決定數據是字節、字還是雙字的AC地址區(跟信捷的數值是字或雙字由指令來決定一樣) |
---|---|
|