1的原碼,反碼,補碼,移碼是什麼

2021-03-10 18:55:59 字數 4076 閱讀 5267

1樓:匿名使用者

原碼 1000 0001

反碼抄 1111 1110

補碼 1111 1111

移碼 0111 1111

我多內容了~

補碼相對於原碼、反碼可以多表示一個數,因為反碼和原碼中「0」有兩種表示方法,而補碼只有一種。

在小數情況下,「多表示一個數」表現出來就是能表示-1。

//這個內容因為比較重要,是個專業點的教材上都會作特別說明,還是要好好看書啊~~

2樓:突然很想哭之麥

你應該去參考微機原理

-1的原碼是10000001

-1的反碼是11111110

-1的補碼是10000010

我是按的8位機器數做的!!

移碼沒學過幫不上了……

3樓:匿名使用者

原碼 1000 0001

反碼 1111 1110

補碼 1111 1111

移碼 0111 1111

4樓:匿名使用者

原碼 1000 0001

反碼 1111 1110

補碼 1111 1111

5樓:匿名使用者

~~he ~~

原碼 1000 0001

反碼 1111 1110

補碼 1111 1111

移碼 0111 1111

-1的原碼,補碼,反碼是什麼??

6樓:仲孫素蘭夫秋

(1)原碼錶示法

原碼錶示法是機器數的一種簡單的表示法。其符號位用0表示正號,用:表示負號,數值一般用二進位制形式表示。設有一數為x,則原碼錶示可記作[x]原。

例如,x1=

+1010110

x2=一1001010

其原碼記作:

[x1]原=[+1010110]原=01010110

[x2]原=[-1001010]原=11001010

原碼錶示數的範圍與二進位制位數有關。當用8位二進位制來表示小數原碼時,其表示範圍:

最大值為0.1111111,其真值約為(0.99)10

最小值為1.1111111,其真值約為(一0.99)10

當用8位二進位制來表示整數原碼時,其表示範圍:

最大值為01111111,其真值為(127)10

最小值為11111111,其真值為(-127)10

在原碼錶示法中,對0有兩種表示形式:

[+0]原=00000000

[-0]

原=10000000

(2)補碼錶示法

機器數的補碼可由原碼得到。如果機器數是正數,則該機器數的補碼與原碼一樣;如果機器數是負數,則該機器數的補碼是對它的原碼(除符號位外)各位取反,並在未位加1而得到的。設有一數x,則x的補碼錶示記作[x]補。

例如,[x1]=+1010110

[x2]=

一1001010

[x1]原=01010110

[x1]補=01010110

即[x1]原=[x1]補=01010110

[x2]

原=11001010

[x2]

補=10110101+1=10110110

補碼錶示數的範圍與二進位制位數有關。當採用8位二進位制表示時,小數補碼的表示範圍:

最大為0.1111111,其真值為(0.99)10

最小為1.0000000,其真值為(一1)10

採用8位二進位制表示時,整數補碼的表示範圍:

最大為01111111,其真值為(127)10

最小為10000000,其真值為(一128)10

在補碼錶示法中,0只有一種表示形式:

[+0]補=00000000

[+0]補=11111111+1=00000000(由於受裝置字長的限制,最後的進位丟失)

所以有[+0]補=[+0]補=00000000

(3)反碼錶示法

機器數的反碼可由原碼得到。如果機器數是正數,則該機器數的反碼與原碼一樣;如果機器數是負數,則該機器數的反碼是對它的原碼(符號位除外)各位取反而得到的。設有一數x,則x的反碼錶示記作[x]反。

例如:x1=

+1010110

x2=一1001010

[x1]原=01010110

[x1]反=[x1]原=01010110

[x2]原=11001010

[x2]反=10110101

反碼通常作為求補過程的中間形式,即在一個負數的反碼的未位上加1,就得到了該負數的補碼。

例1.已知[x]原=10011010,求[x]補。

分析如下:

由[x]原求[x]補的原則是:若機器數為正數,則[x]原=[x]補;若機器數為負數,則該機器數的補碼可對它的原碼(符號位除外)所有位求反,再在未位加1而得到。現給定的機器數為負數,故有[x]補=[x]原十1,即

[x]原=10011010

[x]反=11100101十)1

[x]補=11100110

例2.已知[x]補=11100110,求[x]原。

分析如下:

對於機器數為正數,則[x]原=[x]補

對於機器數為負數,則有[x]原=[[x]補]補

現給定的為負數,故有:

[x]補=11100110

[[x]補]反=10011001十)1

[[x]補]補=10011010=[x]原

7樓:ok小海

機器數一個數在計算機中的二進位制表示形式,  叫做這個數的機器數。機器數是帶符號的,在計算機用一個數的最高位存放符號, 正數為0, 負數為1.比如,十進位制中的數 +3 ,計算機字長為8位,轉換成二進位制就是00000011。

如果是 -3 ,就是 10000011 。那麼-1,就是10000001

原碼如果機器字長為n,那麼一個數的原碼就是用一個n位的二進位制數,其中最高位為符號位:正數為0,負數為1。剩下的n-1位表示該數的絕對值。

例如:x=+101011 , [x]原= 0010_1011

x=-101011 , [x]原= 1010_1011

位數不夠的用0補全。

ps:正數的原、反、補碼都一樣,0的原碼跟反碼都有兩個,因為這裡0被分為+0和-0。

反碼知道了原碼,那麼你只需要具備區分0跟1的能力就可以輕鬆求出反碼,為什麼呢?因為反碼就是在原碼的基礎上,符號位不變其他位按位取反(就是0變1,1變0)就可以了。

例如:x=-101011 , [x]原= 1010_1011 ,[x]反=1101_0100

補碼補碼也非常的簡單,就是在反碼的基礎上按照正常的加法運算加1。

例如:x=-101011 , [x]原= 1010_1011 ,[x]反=1101_0100,[x]補=1101_0101

負數的補碼這麼記更簡單:符號位不變,其他的從低位開始,直到遇見第一個1之前,什麼都不變;遇見第一個1後保留這個1,以後按位取反。

例:[-7]原= 1 000011_1

[-7]補= 1 111100_1

ps:0的補碼是唯一的,如果機器字長為8那麼[0]補=0000_0000。

8樓:匿名使用者

1的機器數是00000001,最高位如果是0,代表為正,如果是1 ,代表為負,所以-1的機器數為10000001,故其原碼也為10000001;

負數的補碼是在原碼上保持最高為不變,其餘位取反並加1,所以-1的補碼為11111111;

負數的反碼是在原碼上保持最高為不變,其餘位取反,所以-1的反碼為11111110。

9樓:寵魅

原始碼與反碼補碼的關係你去搜一下就會開

10樓:敏鈞漆夏山

-1.1

原碼:00011011

反碼:01100100

補碼:01100101

移碼:11100101

11樓:夜隱霜華

選擇8位的二進位制數,結果如下:

-1的原碼 10000001

-1的補碼 11111111

-1的反碼 11111110

240的原碼,反碼,補碼 250的原碼,反碼 補碼各是什麼

240是正數 所以原碼,補碼,反碼都是一樣的 為 0000 0000 1111 0000,250是負數,最高位代表1代表負數,為 原碼 1000 0000 1111 1010,反碼 1111 1111 0000 0101,補碼 1111 1111 0000 0110 原碼就是這個數的二進位制碼 反碼...

原碼 反碼 補碼的理解,原碼 反碼 補碼的基本概念

在計算機系統中,數值,一律採用 補碼 來表示和儲存。原碼和反碼,都是不用的。所謂的 補碼 實際上,是一個 代替負數做運算 的正數。因為,使用了正數 即補碼 代替了負數,所以,在計算機中,也就沒有了減法運算。那麼,只需配置一個加法器,就可以走遍天下了。而原碼和反碼,都沒有這種功能。所以,它們在計算機中...

整數的原碼反碼補碼是什麼意思

整數的原碼 反碼 補碼是十進位制數在機器裡面的二進位制表示方式。在計算機內,定點數有3種表示法 原碼 反碼和補碼。所謂原碼就是前面所介紹的二進位制定點表示法,即最高位為符號位,0 表示正,1 表示負,其餘位表示數值的大小。反碼錶示法規定 正數的反碼與其原碼相同 負數的反碼是對其原碼逐位取反,但符號位...