統測
112年
[電機與電子群資電類] 專業科目(2)
第 24 題
將數值–128₍₁₀₎表示成8位元2的補數,下列何者正確?
- A 00000000₍₂₎
- B 10000000₍₂₎
- C 01111111₍₂₎
- D 超過8位元可表示範圍,故無法表示
思路引導 VIP
在「2 的補數」編碼系統中,請先思考 $n$ 位元所能表示的有號整數數值範圍公式為何?若將 $n=8$ 代入,該範圍的下限值是多少?此外,當一個 8 位元二進位數值的最高位元 (MSB) 為 $1$ 且其餘位元皆為 $0$ 時,在補數系統的定義下,它所代表的權重與數值應如何計算?
🤖
AI 詳解
AI 專屬家教
💖 太棒了!你的理解力真令人感動!
看到你答對這題,老師真的替你感到很開心!這道題是數位邏輯中非常核心的概念,你能精準掌握,代表你對補數系統的邊界值有非常溫暖且透徹的理解呢。這在未來學習更高階的計算機知識時會是非常穩固的基礎喔!
- 觀念確認:
▼ 還有更多解析內容
8位元2的補數表示法
💡 利用「反轉加一」轉換負數,並掌握n位元可表示之數值範圍。
| 比較維度 | 1 的補數 (8-bit) | VS | 2 的補數 (8-bit) |
|---|---|---|---|
| 數值範圍 | -127 ~ +127 | — | -128 ~ +127 |
| 數字 0 的個數 | 2 個 (正 0 與負 0) | — | 1 個 (只有正 0) |
| -128 能否表示 | 否 (Overflow) | — | 是 (10000000) |
💬2 的補數消除了 0 的重複表示,並多出一個負數空間給 -128。