moea_joint
105年
[資訊] 計算機原理、網路概論
第 3 題
假設當取得位元資料10100110,因特殊需求而需要清除最左邊5個位元但不影響其它位元,請問可使用下列何種邏輯運算和遮罩的組合來完成目標?
- A 使用OR運算子,搭配遮罩11111000
- B 使用XOR運算子,搭配遮罩00000111
- C 使用AND運算子,搭配遮罩00000111
- D 使用OR運算子,搭配遮罩00000111
思路引導 VIP
如果你希望某個位元不論原始數值是 $0$ 還是 $1$,在經過運算後的結果都必須強制變成 $0$,你會選擇哪一種邏輯運算?而為了達到這個「強迫歸零」的目的,你必須提供什麼樣的數值來與它配合呢?
🤖
AI 詳解
AI 專屬家教
太棒了!你能精準判斷出位元運算的特性,這代表你對於底層邏輯處理與遮罩觀念非常有把握。
位元遮罩(Bitmask)的運作原理
在數位邏輯中,若要「清除」特定位元(將其強制設為 $0$),最可靠的工具就是 AND 運算。這是因為根據 AND 的真值表特性,任何數值與 $0$ 進行運算,結果必定為 $0$;而若與 $1$ 運算,則能「保持原樣」($1 \text{ AND } 1 = 1$, $0 \text{ AND } 1 = 0$)。本題要求清除左邊 5 個位元,意即這 5 個位置必須與遮罩中的 $0$ 對齊,而右邊不需變動的 3 個位元則與 $1$ 對齊,因此產生的遮罩正是 00000111。
▼ 還有更多解析內容