什麼是位元運算
把整數視為二進位的位元序列,逐位元進行邏輯與(AND)、邏輯或(OR)、互斥或(XOR)、反相(NOT),或向左右移動(移位)的運算。用於取出或設定特定位元、計算1的位元數,以及乘除2的冪次等。
日文名稱: ビット演算
「位元運算」出現在4領域的5道練習題中(邏輯電路, 程式設計基礎(虛擬碼追蹤), 效能評估與效能剖析等)。
這個名詞所屬的領域: 程式設計基礎(虛擬碼追蹤)
把整數視為二進位的位元序列,逐位元進行邏輯與(AND)、邏輯或(OR)、互斥或(XOR)、反相(NOT),或向左右移動(移位)的運算。用於取出或設定特定位元、計算1的位元數,以及乘除2的冪次等。
日文名稱: ビット演算
「位元運算」出現在4領域的5道練習題中(邏輯電路, 程式設計基礎(虛擬碼追蹤), 效能評估與效能剖析等)。
這個名詞所屬的領域: 程式設計基礎(虛擬碼追蹤)
例如將時脈與致能做AND,只在需要時才讓時脈通過的時脈閘控,以及在位元運算中只取出特定位元的遮罩(x AND 0x0F 取出低4位元),都是代表性的用途。
2輸入AND閘的輸出何時為1?例如將多個中斷請求彙整的電路,以及在位元運算中將特定位元設為1的操作(x OR 0x80 使最高位元變為1)。
2輸入OR閘的輸出何時為0?x ∧ (x − 1) 這個位元運算會把 x 最低位的1位元變為0。
∧ 表示逐位元的邏輯與。執行下列程式後 c 的值為下列何者?若事先將資料排序,結果會趨於一致而使預測容易命中;若改用條件選擇指令或位元運算來撰寫,分支本身就會消失。
以效能計數器發現分支預測錯誤非常多。下列何者是適用的改善方法?因此採取的寫法是:不用條件分支,而以位元運算同時算出兩邊的結果再選擇,以及不以機密值查表等。
下列關於以「恆定時間」實作密碼處理時應遵守的事項,何者正確?時脈閘控 中斷 效能計數器(Performance counter) 分支預測 陣列 引數 回傳值 取餘運算 物件導向 差一錯誤