免費開始練習
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

▼ 還有更多解析內容

🏷️ 相關主題

二進位算術與補數運算:計算機中的數值表示
查看更多「[資訊] 計算機原理、網路概論」的主題分類考古題