作者Mal9 (馬英九)
看板C_and_CPP
標題[問題] 修改某byte中幾個位元
時間Thu Nov 5 16:55:26 2009
遇到的問題:比較好的更改位元做法
希望得到的正確結果:比較smart的寫法
使用語言:C
在寫8-bit微處理器的過程中需要更改並做判斷其中的幾個位元
BYTE: test
_ _ _ _ _ _ _ _ 想到的寫法是 先右移2 bits 修改完以後再左移
0 0 0 並且還原 bit 0 & bit 1
0 0 1
0 1 0 請問這有比較聰明的寫法嗎?
0 1 1
. 感謝
.
.
1 1 1
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.245.71
1F:→ MOONRAKER:有何不可?bit operation和shift已經是CPU裡面最快的 11/05 17:02
2F:→ MOONRAKER:運算,你在這麼簡單的operation上怎麼最佳化差別都不大 11/05 17:03
3F:推 holymars:常見的作法是和常數作or和and 11/05 17:10
4F:推 pizza0117:先AND出你要的BIT 在SHIFT 11/05 17:17
5F:→ bleed1979:原po可以參考Tech_Job版我po的"面試題目分享參考答案" 11/05 22:46
6F:→ zhim:BitTestSet(); 11/08 01:16