最簡單的話概括含小數的值的原碼,反碼,補碼如何表達

2021-08-14 02:12:40 字數 7963 閱讀 6586

1樓:芒果給你吃哇

化為2進位制是整數部分除以二知道變為1 小數部分乘以2直到變為1  ,符號位0表示正1表示負

正數:原碼=補碼

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

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

補碼 = 反碼 + 1

小數點依舊用點

定點數所謂定點數是指小數點位置固定不變的數。在計算機中,通常用定點數來表示整數與純小數,分別稱為定點整數與定點小數。

定點整數:一個數的最高二進位制位是數符位,用以表示數的符號;而小數點的位置預設為在最低(即最右邊)的二進位制位的後面,但小數點不單獨佔一個二進位制位,如下所示:

0          1001010010001010001

數符位            數值位                  小數位

因此,在一個定點整數中,數符位右邊的所有二進位制位數表示的是一個整數值。

定點小數:一個數的最高二進位制位是數符位,用來表示數的符號;而小數點的位置預設為在數符位後面,不單獨佔一個二進位制位,如圖所示:

0               1001010010001010001

數符位|小數位         數值位

因此,在一個定點小數中,數符位右邊的所有二進位制位數表示的是一個純小數。

原碼(true form)是一種計算機中對數字的二進位制定點的表示方法。原碼是指一個二進位制數左邊加上符號位後所得到的碼,且當二進位制數大於0時,符號位為0;二進位制數小於0時,符號位為1;二進位制數等於0時,符號位可以為0或1。

2樓:匿名使用者

十進位制小數的原碼和補碼應該先將其轉換成二進位制小數,採用"乘2取整,順序排列"法,直到積中的小數部分為零,或者達到所要求的精度為止,然後把取出的整數部分按順序排列起來,先取的整數作為二進位制小數的高位有效位,後取的整數作為低位有效位。比如0.5625的二進位制表示就是0.

1001b;如果機器碼字長8位的話,0.5的二進位制表示就是0.1000000b,

計算機中的資料表示

1.符號數字化 : 用0表示正,用1表示負,則稱為符號數字化.

2.真值 : 用正負號腳絕對值表示數值,這種形式稱為真值.如 +101011,-111100..............

3.機器數 : 符號數字化以後的數稱為機器數.如 0101011,1100101............

4.計算機中,我們用一個位元組表示一個數,一個位元組有8位,超過8位就進1,在記憶體中的情況為:1 0000 0000,由於進位,1將被丟棄

比如:[0.375]原碼=[0.011b] 字長8位原碼=00110000b

[0.5625]原碼=[0.1001b] 字長8位原碼=01001000b

正數的補碼和正數的原碼,反碼相同;

負數的反碼是其對應正數的原碼按位求反,補碼是反碼末尾加1;

負數最高位為1,表示負數,正數最高位為0,表示正數。

補碼取值範圍是-128~127,反碼是-127~127,原碼是-127~127

比如:正數:[x]原 = 0.101011,那麼[x]反 = 0.101011,[x]補 = 0.101011

負數:[x]原 = 1.101011,那麼[x]反 = 1.010100,[x]補 = 1.1010101

3樓:沙裡波特

題主怎麼會想到這個!

在計算機中,小數,是用「浮點數」存放的。

並不是用原碼反碼補碼這些簡單的事。

4樓:師華永

①把該小數轉換成二進位制。②其他的完全與非小數做法一樣。例如:-0.0101的原碼是10.0101,反碼是11.1010,補碼是11.1011

最簡單的話概括含小數的值的原碼,反碼,補碼如何表達?

5樓:芒果給你吃哇

化為2進位制是整數部分除以二知道變為1 小數部分乘以2直到變為1  ,符號位0表示正1表示負

正數:原碼=補碼

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

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

補碼 = 反碼 + 1

小數點依舊用點

定點數所謂定點數是指小數點位置固定不變的數。在計算機中,通常用定點數來表示整數與純小數,分別稱為定點整數與定點小數。

定點整數:一個數的最高二進位制位是數符位,用以表示數的符號;而小數點的位置預設為在最低(即最右邊)的二進位制位的後面,但小數點不單獨佔一個二進位制位,如下所示:

0          1001010010001010001

數符位            數值位                  小數位

因此,在一個定點整數中,數符位右邊的所有二進位制位數表示的是一個整數值。

定點小數:一個數的最高二進位制位是數符位,用來表示數的符號;而小數點的位置預設為在數符位後面,不單獨佔一個二進位制位,如圖所示:

0               1001010010001010001

數符位|小數位         數值位

因此,在一個定點小數中,數符位右邊的所有二進位制位數表示的是一個純小數。

原碼(true form)是一種計算機中對數字的二進位制定點的表示方法。原碼是指一個二進位制數左邊加上符號位後所得到的碼,且當二進位制數大於0時,符號位為0;二進位制數小於0時,符號位為1;二進位制數等於0時,符號位可以為0或1。

6樓:沙裡波特

最簡單的話概括:

含小數的值,沒有原碼,反碼,補碼。

原碼、反碼、補碼

7樓:匿名使用者

請我給你的詳解:原碼、補碼和反碼

(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〕原

或者說:

數在計算機中是以二進位制形式表示的。

數分為有符號數和無符號數。

原碼、反碼、補碼都是有符號定點數的表示方法。

一個有符號定點數的最高位為符號位,0是正,1是副。

以下都以8位整數為例,

原碼就是這個數本身的二進位制形式。

例如0000001 就是+1

1000001 就是-1

正數的反碼和補碼都是和原碼相同。

負數的反碼是將其原碼除符號位之外的各位求反

[-3]反=[10000011]反=11111100

負數的補碼是將其原碼除符號位之外的各位求反之後在末位再加1。

[-3]補=[10000011]補=11111101

一個數和它的補碼是可逆的。

為什麼要設立補碼呢?

第一是為了能讓計算機執行減法:

[a-b]補=a補+(-b)補

第二個原因是為了統一正0和負0

正零:00000000

負零:10000000

這兩個數其實都是0,但他們的原碼卻有不同的表示。

但是他們的補碼是一樣的,都是00000000

特別注意,如果+1之後有進位的,要一直往前進位,包括符號位!(這和反碼是不同的!)

[10000000]補

=[10000000]反+1

=11111111+1

=(1)00000000

=00000000(最高位溢位了,符號位變成了0)

有人會問

10000000這個補碼錶示的哪個數的補碼呢?

其實這是一個規定,這個數表示的是-128

所以n位補碼能表示的範圍是

-2^(n-1)到2^(n-1)-1

比n位原碼能表示的數多一個

又例:1011

原碼:01011

反碼:01011 //正數時,反碼=原碼

補碼:01011 //正數時,補碼=原碼

-1011

原碼:11011

反碼:10100 //負數時,反碼為原碼取反

補碼:10101 //負數時,補碼為原碼取反+1

0.1101

原碼:0.1101

反碼:0.1101 //正數時,反碼=原碼

補碼:0.1101 //正數時,補碼=原碼

-0.1101

原碼:1.1101

反碼:1.0010 //負數時,反碼為原碼取反

補碼:1.0011 //負數時,補碼為原碼取反+1

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

所謂原碼就是前面所介紹的二進位制定點表示法,即最高位為符號位,「0」表示正,「1」表示負,其餘位表示數值的大小。

反碼錶示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。

補碼錶示法規定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

假設有一 int 型別的數,值為5,那麼,我們知道它在計算機中表示為:

00000000 00000000 00000000 00000101

5轉換成二制是101,不過int型別的數佔用4位元組(32位),所以前面填了一堆0。

現在想知道,-5在計算機中如何表示?

在計算機中,負數以其正值的補碼形式表達。

什麼叫補碼呢?這得從原碼,反碼說起。

原碼:一個整數,按照絕對值大小轉換成的二進位制數,稱為原碼。

比如 00000000 00000000 00000000 00000101 是 5的 原碼。

反碼:將二進位制數按位取反,所得的新二進位制數稱為原二進位制數的反碼。

取反操作指:原為1,得0;原為0,得1。(1變0; 0變1)

比如:將00000000 00000000 00000000 00000101每一位取反,得11111111 11111111 11111111 11111010。

稱:11111111 11111111 11111111 11111010 是 00000000 00000000 00000000 00000101 的反碼。

反碼是相互的,所以也可稱:

11111111 11111111 11111111 11111010 和 00000000 00000000 00000000 00000101 互為反碼。

補碼:反碼加1稱為補碼。

也就是說,要得到一個數的補碼,先得到反碼,然後將反碼加上1,所得數稱為補碼。

比如:00000000 00000000 00000000 00000101 的反碼是:11111111 11111111 11111111 11111010。

那麼,補碼為:

11111111 11111111 11111111 11111010 1 = 11111111 11111111 11111111 11111011

所以,-5 在計算機中表達為:11111111 11111111 11111111 11111011。轉換為十六進位制:0xfffffffb。

再舉一例,我們來看整數-1在計算機中如何表示。

假設這也是一個int型別,那麼:

1、先取1的原碼:00000000 00000000 00000000 00000001

2、得反碼: 11111111 11111111 11111111 11111110

3、得補碼: 11111111 11111111 11111111 11111111

正數的原碼,補碼,反碼都相同,都等於它本身

負數的補碼是:符號位為1,其餘各位求反,末位加1

反碼是:符號位為1,其餘各位求反,但末位不加1

也就是說,反碼末位加上1就是補碼

1100110011 原

1011001100 反 除符號位,按位取反

1011001101 補 除符號位,按位取反再加1

正數的原反補是一樣的

在計算機中,資料是以補碼的形式儲存的:

在n位的機器數中,最高位為符號位,該位為零表示為正,為1表示為負;

其餘n-1位為數值位,各位的值可為0或1。

當真值為正時:原碼、反碼、補碼數值位完全相同;

當真值為負時: 原碼的數值位保持原樣,

反碼的數值位是原碼數值位的各位取反,

補碼則是反碼的最低位加一。

注意符號位不變。

如:若機器數是16位:

十進位制數 17 的原碼、反碼與補碼均為: 0000000000010001

十進位制數-17 的原碼、反碼與補碼分別為:1000000000010001、1111111111101110、1111111111101111

鷹與屎殼郎用幾句簡單的話概括故事內容

鷹在追逐兔子時,沒把屎殼郎放在眼裡,還侮辱了它,最後遭到屎殼郎的報復,鷹從此不在屎殼郎出現的季節孵化小鷹。老鷹和屎殼郎用簡潔語言概括 看 直 播 繡 比b 的 來!叄 柒c 伍 點 匸 m 伊索 aesop620 560b c 在 誕生前約600年,也就是2500多年前出生在希臘。伊索童年期是一個啞...

還有什麼別的話比這句最簡單的話更能表達我此時的全部感情呢 不變意思換個說法

陳述句 沒有別的話比這句最簡單的話更能表達我此時的全部感情。只有這句最簡單的話能表達我此時的全部感情 沉默 讓別人去猜想吧 笑話 你百年之後願意埋在我家祖墳嗎?還有什麼別的話比這句話最簡單的話更能表達我此時的全部有感情呢?改為陳述句 改為陳述句如下 沒有什麼話能比這句最簡單的話更能表達我此時的全部感...

論語簡單點的,論語的簡單概括

子曰 學而不思則罔 思而不學則殆.子貢問曰 孔文子何以為之文也?子曰 敏而好學,不恥下問,是以為之文也.子曰 歲寒,然後知松柏之後凋也。子曰 溫故而知新,可以為師也。你要什麼啊?三人行 呵呵 求簡短的論語原句及翻譯 50句謝謝 巧言令色,鮮矣仁。論語 學而 譯文 孔子說 花言巧語,裝著一副偽善的樣子...