2013-09-23 99 views
0

說明:將這些十進制數到5位二進制補碼形式,如果可能的話。如果不可能,請解釋爲什麼這樣。轉換十進制轉換爲二進制補碼

(16)基地10

根據網上的轉換器:

據我瞭解,

若小數點爲積極

  • 第1步:轉換ma對二進制的認識。
  • 步驟2:將0填充到所需的比特大小。

若小數點爲

  • STEP 1:將幅度爲二進制。
  • 步驟2:將0填充到所需的比特大小。
  • 第3步:反轉位,獲得1's補。
  • 第4步:加1到實現二進制補碼。

由於16是正的,我只需將其轉換爲二進制通過反覆分裂得到(10000)鹼2.

我不再填充0的,因爲它已經是(含有5個位數)5位。

爲什麼在線轉換器返回一個錯誤(這也是我堅信是正確答案)有人可以解釋一下嗎?

回答

3

有了5位可以代表最多2^5個不同的數字,因爲你要正數和負數的範圍是-16至+15。

所以你得到錯誤,因爲16是超出範圍的5位。改爲6位,它應該工作

0

您需要6位來表示+16,因爲值10000代表-16。可視化

最好的辦法是 -
00000-0
00001-1
00010-2
....
01111-15
10000 - ( - )16
10001 - ( - )15
....
試着拿2的補數10000,你應該得到值16的二進制