95對應的八位機器數原碼,反碼,補碼

2021-03-04 08:49:06 字數 3822 閱讀 1934

1樓:飛雪射鹿笑倚鴛

-95的原

碼是11011111;

反碼是符號位不變,其他位取反得:10100000;

補碼是反碼加1,即10100000+1得10100001。

即-95的原碼是11011111,反碼是10100000,補碼是10100001。

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

2樓:匿名使用者

原位:無

反碼:無

補碼:10000000

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

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

3樓:如此_青春

在八位二進位制下,因為有一位是符號位,原碼和反碼只能表示0到127,-0到-127,所以-128不能用原碼或反碼表示。

按這種說法,128因為無法用八位二進位制下的原碼表示,則-128的八位二進位制下的補碼也是不存在的。

但是,為了在數的表示上消除編碼對映的不唯一性,所以通過人為的定義對轉換的10000000強制認定為-128。

因此,-128八位二進位制下的原碼和反碼不存在,而八位二進位制下的補碼為10000000。

擴充套件資料:

1.原碼的求法:

(1)對於正數,轉化為二進位製數,在最前面新增一符號位(這是規定的),用1表示負數,0表示正數。

如:0000 0000是乙個位元組,其中左邊第乙個0為符號位,表示是正數,其它七位表示二進位制的值.其實,機器不管這些,什麼符號位還是值,機器統統看作是值來計算。

正數的原碼、反碼、補碼是同乙個數。

(2)對於負數,轉化為二進位製數,前面符號位為1。表示是負數。

計算原碼只要在轉化的二進位製數前面加上相應的符號位就行了.

2.反碼的求法:對於負數,將原碼各位取反,符號位不變.

3.補碼的求法:對於負數,將反碼加上二進位制的1即可,也就是反碼在最後一位上加上1就是補碼了。

4樓:青爵亾

-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"。

參考資料

5樓:兔丞飛

數值在計算機中表示形式為機器數,計算機只能識別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;

6樓:沙里波特

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

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

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

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

7樓:prince致匠園藝

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

8樓:辰樂團威武

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

記得採納啊

9樓:霜染楓林嫣紅韻

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

10樓:匿名使用者

用補碼表示邏輯值得話,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位,分別寫出十進位製數+38和-38的原碼,反碼和補碼?

11樓:可軒

x = +38 =10 0110b

[x]原 =[x]反 =[x]補

=0010 0110b

. y = -38d = -10 0110b[y]原 =1010 0110b

[y]反 =1101 1001b

[y]補 =1101 1010b

12樓:匿名使用者

-45的8位原碼:1 010 1101;

-45的8位反碼:1 101 0010;

-45的8位補碼:1 101 0011.

13樓:宇文桂蘭貳煙

67的原碼

為01000011(第du一位為符號位,『zhi0』表示正數,『1』表示負數)dao-67的原回碼那麼為答11000011,因為正數的原碼、反碼、補碼都相同,而負數的反碼=原碼各位取反(即0變1,1變0,符號位不能變)

負數的補碼=負數的反碼+00000001,所以-67的原碼:11000011,反碼:10111100,補碼:10111101

最大的七位數是最小的八位數是

最大的七位數是 9999999 最小的八位數是 10000000 9999999,10000000 最大的七位數與最小的八位數的和是多少?差是多少 最大的七位數是9999999,最小的八位數是10000000,兩者的和是19999999,和是差是1。拓展資料 這道題主要考查對萬以內的數的加法和減法 ...

用3,0,5,1,2,6,7,4這數字組成最大的八位數是組成最小的八位數是()

最大的數就從大到小排 76543210 最小的數反過來,但0不能是第乙個 10234567 最大 76543210 最小 10234567 7654210,1024567 用8 0 4 7 1 5 3 2這八個數字組成最大的八位數是 讀作 最小的八位數是 87543210 八千七百五十四萬三千二百一...

八位數最高位上是最小的質數,萬位上是最小的合數,千位上是最大的一位數十位上

24600000,2460 乙個八位數的最高位上是最小的質數,百位上是最小的合數,千位上是最大的一位數,十位上是最小的一位數,1 最小的質數是2,最小的合數是4,最大的一位數是9,最小的一位數是1,根據題意在千萬位上寫2,百位上寫4,千位上寫9,十位上是1,其餘各位都寫零,這個數寫作 2000941...