如果用8的補數法表示負整數該怎麼做

電腦都用2進位,所以一般電腦通常都用2的補數法來代表負整數,

如果有一台用8進位的電腦,那就要用8的補數法來代表負整數

請問(25)8 <---[25的8進位]用8的補數法是多少??

包括做法喔^^

2 Answers

Rating
  • 2 decades ago
    Favorite Answer

    Given a number N in base r having n digits, the (r-1)'s complement of N is defined as (r^n-1)-N.

    The r's complement of an n-digit number N in base r is defined as r^n-N, for N!=0 and 0 for N=0.

    因此8的補數可兩種方式計算:

    1. 先計算7的補數再加1。

    即用77...777(看你數字存幾位)減去數值,結果加1。

    2. 保留所有最右邊連續的0,由右往左第一個不為0的數位(digit)用8去減,其餘不為0的數位用7去減。

    因此(25)_8的8的補數為(53)_8。

    舉個例子:求(25100)_8的8的補數。

    方法一

    (77777-25100+1)_8=(52677+1)_8=(52700)_8

    方法二

    (52700)_8

    其它radix參考那兩個英文定義也可求出。

    上述討論不含小數點整數,若含小數點,則先移除小數點求補數,再填回小數點到適當位置。

    Source(s): digital design
  • ?
    Lv 5
    2 decades ago

    1: 八位元二進位表示正負數,十進位-1等於11111111(二進位),十進位-2等於11111110(二進位), 十進位-8等於11111000(二進位), 十進位1等於00000001(二進位)

    2: 八位元CPU並不示所以變數多是八位元需要看數字大小,也可以16位元或

    是32 位元64位元,只不過它的指令一次只處理八位元,如果64位元要更多指

    令 計算處理O

    Source(s): me
Still have questions? Get your answers by asking now.