作者scrush (阿慶)
看板Electronics
標題[問題] 數值溢位的問題
時間Fri Apr 22 20:47:07 2011
※ [本文轉錄自 ASM 看板 #1DiNX7op ]
作者: scrush (阿慶) 看板: ASM
標題: [問題] 數值溢位的問題
時間: Fri Apr 22 20:44:53 2011
我目前使用encoder需要進行連續累加的動作,但cpu的count只有16位元,超過65535就會
自動變成0,想請教一下要怎樣做才可以繼續累加下去?
我試過一些方法都試不大出來,我相信一定是在中斷這邊著墨,只可惜還是沒有成功,
可能是我觀念上有點問題,能否提供一些意見參考,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.166.115
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.37.166.115
1F:推 joy830:0會怎麼樣嗎? 可以完整說一下你的程式動作嗎? 04/22 20:56
2F:→ m490521:用c還是用asm 用c就靠編譯器 用asm就靠自己 04/22 21:45
3F:→ mosquito520:不管用C或是asm,就如果count == 65535就inc var 04/22 22:44
4F:→ mosquito520:要判斷的時候就拿兩個值來判斷 04/22 22:44
5F:→ mosquito520:自己手動擴展成32bit就好啦 04/22 22:45
6F:推 chocomaro:用C的話~最笨的方法就是把值除以65536得到商數跟餘數吧 04/23 00:40