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...