8的補碼是多少為什麼 1的反碼是

時間 2022-02-09 18:10:11

1樓:莫荻

樓主你好,我們先來看看反碼的概念,簡單的說,正數的反碼與原始碼一致,負數的反碼符號位不變,其他位按位取反.0可以理解為正,也可以理解為負,所以有兩種表示.

你說-1的反碼是-126,這是用8位2進製來表示乙個數.第一位表示符號位,-1換算成2進製為10000001,根據反碼的規則,它的反碼為11111110,換算成10進製即為-126。用8位2進製來表示乙個數的話,-8的原始碼為10001000,反碼為11110111,換算成10進製為-119。

希望可以幫到你!

2樓:匿名使用者

-8的補碼是11,111,000 -1的補碼是-11,111,111 其中最前面表示符號位

具體如下:

負數:原碼 = 正數部分(去掉負號)的二進位制值,且符號位(最左邊的位元位)為1

反碼 = 正數部分(去掉負號)的二進位制值,按位取反補碼 = 反碼 + 1

-8原碼是 10,001,000 反碼11,110,111 補碼 11,111,000

-8的補碼是多少 為什麼-1的反碼是-126

3樓:包遐思佟黛

-8的補碼是11,111,000

-1的補碼是-11,111,111

其中最前面表示符號位

具體如下:

負數:原碼

=正數部分(去掉負號)的二進位制值,且符號位(最左邊的位元位)為1反碼=

正數部分(去掉負號)的二進位制值,按位取反補碼=反碼+

1-8原碼是

10,001,000

反碼11,110,111

補碼11,111,000

4樓:甩手掌櫃

上一期大樂透的中獎號碼,大樂透135期的中獎號碼是多少?

-128的八位原碼、反碼、補碼是多少?

5樓:匿名使用者

原位:無

反碼:無

補碼:10000000

1 原碼和反碼都無法表示, 補碼是100000002 -128沒有反碼

3 反碼只能表示0到127,-0到-1274.二進位制原碼或者8位二進位制反碼的表示範圍是-127~+127,不能表示-128;而8位二進位制補碼的表示範圍是-128~+127,-128的8位二進位制補碼為10000000。

6樓:青爵亾

-128的8位的話原碼和反碼都無法表示, 補碼是10000000。

這個屬於特殊情況,需要自己記住。

擴充套件資料

在計算機內,有符號數有3種表示法:原碼、反碼和補碼。

原碼:在數值前直接加一符號位的表示法。

符號位 數值位 [+7]原= 0 0000111 b[-7]原= 1 0000111 b

反碼:正數:正數的反碼與原碼相同。負數:負數的反碼,符號位為"1",數值部分按位取反。

例如: 符號位 數值位

[+7]反= 0 0000111 b

[-7]反= 1 1111000 b

補碼的表示:

正數:正數的補碼和原碼相同。

負數:負數的補碼則是符號位為"1"。並且,這個"1"既是符號位,也是數值位。數值部分按位取反後再在末位(最低位)加1。也就是"反碼+1"。

參考資料

7樓:兔丞飛

數值在計算機中表示形式為機器數,計算機只能識別0和1,使用的是二進位制;

在八位二進位制下,-128不能用原碼或反碼表示,反碼只能表示0到127,-0到-127;

用補碼表示為:10000000

在八位整數裡原碼的取值範圍為-127到+127,反碼也是;在八位二進位制中就把-0當作最小數-128用,也就是10000000

-0的原碼:10000000

-0的反碼:11111111

-128的補碼:10000000

擴充套件資料小數原碼

[x] =

x( 0≤x <1 )

1- x (-1 < x ≤ 0)

例如: x=+0.1011 , [x]原= 0.1011x=-0.1011 [x]原= 1.1011整數原碼

[x]原 =

x (0≤x <2(n-1))

2(n-1)-x (- 2(n-1) < x ≤ 0)x為正整數時,[x]原=x;

x為負整數時,[x]原=2的n次方-x;

x為負小數時,[x]原=1-x;

8樓:沙里波特

-128 的八位二進位制原碼、反碼,都不存在。

-128 的八位二進位制補碼,是按照補碼的定義式,求出的。

即:[-128]補 = 2^8 -128 = 256-128 = 128 = 1000 0000b。

不要迷信「求反加一」,那是騙人的,並不是定義式。

9樓:prince致匠園藝

補碼的運算:聽老師講解真值、原碼、反碼和補碼

10樓:辰樂團威武

8位的話原碼和反碼都無法表示, 補碼是10000000 -128沒有反碼 反碼只能表示0到127,-0到-127(當然指的是8位)

記得採納啊

11樓:霜染楓林嫣紅韻

會員哪煩哪不哪,這個是多少?應該去詢問一下程式設計的技術員,他們會知道的

12樓:匿名使用者

用補碼表示邏輯值得話,1000 0000

1、考慮符號為可進製的情況(一般不這麼判斷):反碼讀取值-127(1111 1111),原碼讀取值 0(0000 0000)。顯然原碼和補碼不能一一對應,因為原碼讀取值0對應補碼讀取值0和-128.

2、考慮符號為不進製的情況:反碼讀取值-127(1111 1111),原碼讀取值-0(1000 0000).

這樣,為了建立原碼和補碼讀取值和邏輯值總是一致的規則。有部分人認補碼-128沒有反碼和原碼。原碼-0沒有補碼,或者認同其中一部分。

用原碼無法將-128表示為邏輯值,原碼的範圍為-127到-0和+0到127。

在真正做計算機計算的時候,資料用補碼儲存,所以直接認為-128到127是有邏輯的就可以了。並且-128不能轉原碼(因為讀取值和邏輯值不同)。還有,計算機計算都用補碼做邏輯了,轉原碼沒有意義,考慮這個問題我感覺也沒意義。

-128+127 (1000 000 + 0111 1111 = 1111 1111)-1

-128 - 1 (1000 000 + 1111 1111) 最高位暫存器溢位,微控制器可選擇產生溢位中斷,進行報錯

127 + 1邏輯同上

為什麼8位二進位制的補碼取值範圍是-128~127

13樓:匿名使用者

八位二進位制正數的補碼範圍是0000 0000 ~ 0111 1111 即0 ~ 127,負數的補碼範圍是正數的原碼0000 0000 ~ 0111 1111 取反加一(也可以理解為負數1000 0000 ~ 1111 1111化為反碼末尾再加一)。

所以得到 1 0000 0000 ~ 1000 0001,1000 0001作為補碼,其原碼是1111 1111(-127),依次往前推,可得到-1的補碼為1111 1111,那麼補碼0000 0000的原碼是1000 0000符號位同時也可以看做數字位即表示-128,這也解釋了為什麼127(0111 1111)+1(0000 0001)=-128(1000 0000)。

在計算機中資料用補碼表示,利用補碼統一了符號位與數值位的運算,同時解決了+0、-0問題,將空出來的二進位制原碼1000 0000表示為-128,這也符合自身邏輯意義的完整性。因此八位二進位制數表示範圍為-128~+127。

拓展資料:補碼的特性:

1、乙個負整數(或原碼)與其補數(或補碼)相加,和為模。

2、對乙個整數的補碼再求補碼,等於該整數自身。

3、補碼的正零與負零表示方法相同。

14樓:塔罵德

8位二進位制的範圍就是-128~127,也就是-2^7~2^7-1,所以反碼也是這樣。

計算機對有符號數(包括浮點數)的表示有三種方法:原碼、反碼和補碼8位原碼能夠表示數的範圍是 -127~1278位反碼能夠表示數的範圍是 -127~1278位補碼能夠表示數的範圍是 -128~127既然範圍是-128~127,那肯定是用補碼表示的。

15樓:沙里波特

在補碼中,負數

非負數,是一樣多的。

字長 8 位,共有 256 組**。

用其中的一半(128 個),表示負數,就是-128~-1。

用其中的一半(128 個),表示非負數,即 0~+127。

綜合,就是-128  ~ +127。

16樓:匿名使用者

對8位二進位制的博馬取值範圍是128~127這個問題呢,我還正在討論中,還沒有完全正確的結果。

17樓:星空月刃

0到127 二進位制為 00000000到01111111

-128到-1 二進位制為10000000到11111111

18樓:蘇北第一皮

看這個就好了,講的很全面很清楚

19樓:匿名使用者

這個是有符號的,八位的最高位表示符號位,1為負,0為正

所以範圍是:1111 1111 ——0111 1111

-8的補碼是多少?

20樓:太平洋海角

-8的補碼是:11111000,因為-8超出了4位二進位製所能表達的範圍,所以必須要用8位二進位制表示。

負整數的補碼計算是將其原碼除符號位外的所有位取反後加1,-8補碼的計算過程是:-8對應正數8(00001000)→所有位取反(11110111)→加1(11111000)。

擴充套件資料

在計算機系統中,數值一律用補碼來表示和儲存。原因在於,使用補碼,可以將符號位和數值域統一處理;同時,加法和減法也可以統一處理。此外,補碼與原碼相互轉換,其運算過程是相同的,不需要額外的硬體電路。

計算機中的符號數有三種表示方法,即原碼、反碼和補碼。三種表示方法均有符號位和數值位兩部分,符號位都是用0表示「正」,用1表示「負」,而數值位,三種表示方法各不相同。

21樓:靜候的野百合

(浙大信電學渣一枚)

要算-8的補碼:

(1)如果用4位二進位制數表示的話,原碼1000(「1」表示「-」號,「000」可以看成數字位「111」+1的結果)——反碼1111——補碼1000。

(2)如果用8位二進位制數表示的話,原碼1000 1000——反碼1111 0111

——補碼1111 1000。

以上為思考過程,但是要注意:4位二進位制數表示的範圍是:原碼-7到7(其中0有兩種表示),反碼也是-7到7(其中0有兩種表示),而補碼是-8到7(反碼中的負數移1位,空出乙個位置給-8)。

即是說,在4位二進位制表示中,-8只有補碼,沒有原碼和反碼。同理,在5位二進位制表示中,-16只有補碼10000,沒有原碼和反碼。在3位二進位制表示中,-4只有補碼100,沒有原碼和補碼。

在2位二進位制中,-2只有補碼10,-1補碼為11,0的補碼為00,1的補碼為01。

更一般地講,補碼的引入是為了表示符號數。比如4位二進位制補碼,可以表示的數的範圍是-8到7,其中0000到0111依次對應著0到7,1000到1111依次對應著-8到-1,前面的符號位0和1可以看成是對兩個容器的編號,容器「0」放非負數,容器「1」放負數,而且補碼數值增加對應的數本身大小也增加(這一點至關重要)。正因為補碼加1,對應的數字也在迴圈區間(如-8到7)中加1,從而使得補碼加減法和真實數字可以直接對應。

再更一般講:原碼,反碼,補碼,本質上都是對同乙個01字串的不同理解方式。我們學的這三個概念,也就是01字串的三種對應關係(就如同3種對映,3個函式)。

除了這三種碼,我們也可以根據需要,去定義自己的碼。

49的原碼,反碼,補碼分別是多少?

正數原碼補碼反碼都是一樣的,故49 110001負數的反碼即為負數取正後的原碼,然後在該原碼前面加上乙個0,然後再全部取反即可 負數的補碼就是反碼加1 49反碼1001110 49補碼1001111 以8位機器碼為例,49的。原碼 10110001 首位為1表示負數,110001即為49的二進位制值...

計算機佔8位 56的原碼反碼補碼

原碼 1011 1000 反碼 1100 0111 補碼 1100 1000 第一位是符號位,1表示負數。將57變為二進位制,因為二進位制數從右到左第七位到第一位分別代表十進位制數的64,32,16,8,4,2,1,而32 57 64,所以57的二進位制表示為111001。根據8位機器數得到 57的...

對於正數,其原碼 反碼 補碼是相同的嗎

丶兔牙媽媽 相同的,正數的原碼 反碼 補碼。引進補碼的作用是為了讓計算機更方便做減法。例如 按時間12個小時來算,現在的準確時間是4點,有一個表顯示的是7點,如果要校準時間,我們可以將時針退7 4 3格,也可以向前撥12 3 9格,計算機做減法就可以轉化成 3 9,這樣可以簡化計算機的硬體裝置去做複...