[問題] 新手發問-位移問題

看板C_and_CPP (C/C++)作者 (卡多)時間16年前 (2010/01/30 00:26), 編輯推噓1(107)
留言8則, 6人參與, 最新討論串1/1
這幾天再想一個問題想不知道如何去寫 假設X=C7h 轉換成2進制為 1100 0111 (1) 我想要mask第0bit and 1 bit 其餘不變 想法:利用左移方式 可達成使得0bit and 1 bit 為0 1100 0111 << 2 ----->0001 1100 雖然讓0bit and 1 bit 為0 但前面6個bit全都走樣 請問要如何保留?? (2) 1100 0111 要讓0bit and 1 bit永恆為01 其餘bit不變 是否能給個方向?? -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.179.47 ※ 編輯: lordking 來自: 219.85.179.47 (01/30 00:27)

01/30 00:40, , 1F
(1) 跟 1111 1100 作 bitwise-AND運算
01/30 00:40, 1F

01/30 00:40, , 2F
這麼明顯了 (2)自己想 XD
01/30 00:40, 2F

01/30 00:55, , 3F
布林運算
01/30 00:55, 3F

01/30 09:12, , 4F
計算機按一按 根據需要做and-or
01/30 09:12, 4F

01/30 10:32, , 5F
位移其他位一定會變, 要保留什麼? 我看不懂問題...
01/30 10:32, 5F
我的目的是要將前六個bit保留 後兩個固定為00 所以才想說用位移方式 ※ 編輯: lordking 來自: 219.85.179.47 (01/30 20:33) ※ 編輯: lordking 來自: 219.85.179.47 (01/30 20:38)

01/30 21:29, , 6F
如果是都在前或都在後, 也可以用移位去掉, 再加回來
01/30 21:29, 6F

01/30 22:53, , 7F
一二樓給的提示很多了喲:D
01/30 22:53, 7F

01/31 09:36, , 8F
(1)C7H-03H(2)第一個問題+01H或做OR
01/31 09:36, 8F
文章代碼(AID): #1BOmmYxA (C_and_CPP)
文章代碼(AID): #1BOmmYxA (C_and_CPP)