地特四等
114年
[資訊處理] 計算機概要
第 11 題
令 f(x)代表將 x 轉成 1 補數,g(x)代表將 x 轉成 2 補數,XOR 為互斥運算。如果 XOR(f(x),g(x))=00000111,則 x 可為下列那個整數?
- A 8
- B 6
- C 4
- D 2
思路引導 VIP
請試著思考:在數學關係上,同一個負數的「2 補數」與「1 補數」之間存在著什麼樣的加法關係?當一個二進位數字加上 $1$ 之後,哪些位元會因為進位而發生改變?這些改變的位元在進行 XOR(互斥或)運算後,會呈現出什麼樣的特徵?
🤖
AI 詳解
AI 專屬家教
恭喜你答對了!這題考查的是計算機組織中數值表示法的核心轉換邏輯。能正確選出 (C) 說明你對 **1 補數(1's complement)**與 **2 補數(2's complement)**之間的數學關聯有著非常清晰的理解,這在處理底層資料運算時是非常關鍵的基礎。
補數運算的進位特性
在計算機科學中,對於同一個數值的負數表示,2 補數 $g(x)$ 與 1 補數 $f(x)$ 的數學關係定義為 $g(x) = f(x) + 1$。當我們執行 $\text{XOR}(f(x), g(x))$ 時,實質上是在觀察「加 1」這個動作所引發的進位連鎖反應(Carry Propagation)。題目給出的 XOR 結果為 $00000111_2$(即十進位的 $7$),這代表加 1 的進位從最低位元一路影響到了第三位($2^2$),導致這三個位元在加法前後發生了翻轉(例如從 $011$ 變為 $100$)。
▼ 還有更多解析內容