計算機中原碼反碼補碼之間的關係,計算機的原碼,反碼,補碼是怎麼回事?可以舉例說明嗎

2021-03-17 09:27:22 字數 2274 閱讀 3861

1樓:匿名使用者

原碼:就是原碼,真實的碼

反碼:在原碼的基礎上,符號位不變,數值位按位取反補碼:1)正數的補碼:與原碼相同。

【例1】+9的補碼是00001001。

(2)負數的補碼:符號位為1,其餘位為該數絕對值的原碼按位取反然後整個數加1。

2樓:

計算機的原碼,反碼,補碼是怎麼回事?可以舉例說明嗎?

3樓:王王王小六

原碼、反碼和補碼是計算機中對

數字二進位制的三種表示方法。

1、原碼

原碼(true form)是一種計算機中對數字的二進位制定點表示方法。原碼錶示法在數值前面增加了一位符號位(即最高位為符號位):正數該位為0,負數該位為1(0有兩種表示:

+0和-0),其餘位表示數值的大小。

例如:用8位二進位制表示一個數,+11的原碼為00001011,-11的原碼就是10001011。

2、反碼

反碼是數值儲存的一種,多應用於系統環境設定,如linux平臺的目錄和檔案的預設許可權的設定umask,就是使用反碼原理。反碼的表示方法是:正數的反碼與其原碼相同;負數的反碼是對正數逐位取反,符號位保持為1。

例如:[+7]反= 0 0000111 b;

[-7]反= 1 1111000 b。

3、補碼

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

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

也就是「反碼+1」。

例如:[+7]補= 0 0000111 b;

[-7]補= 1 1111001 b。

擴充套件資料

原碼、反碼、補碼的轉換方法如下:

(1) 已知原碼,求補碼。

例:已知某數x的原碼為10110100b,試求x的補碼和反碼。

首先通過原碼的首位確定該數字的正負,若為正數,反碼與原碼相同,補碼比原碼在末尾加1;若為負數,求其反碼時,符號位不變,數值部分按位求反;求其補碼時,再在其反碼的末位加1。

(2)已知補碼,求原碼。

按照求負數補碼的逆過程,數值部分應是最低位減1,然後取反。但是對二進位制數來說,先減1後取反和先取反後加1得到的結果是一樣的,故仍可採用取反加1的方法。

4樓:匿名使用者

計算機以二進位制補碼儲存資料

以16位機器為例:

比如83的二

進位制碼為:0000 0000 0101 0011由於正數的原始碼、反嗎、補碼,上面的既是原始碼,也是反碼和補碼下面通過負數講解原始碼、反碼、補碼之間的關係以-83為例

先求出-83絕對值的原始碼:0000 0000 0101 0011計算機區分正負數通過判斷最高位符號位,1為負數、0為正數那麼-83的原始碼為:1000 0000 0101 0011反碼在原始碼基礎上按位取反,符號位不變:

1111 1111 1010 1100

補碼在反碼的基礎上加1:1111 1111 1010 1101補碼轉原始碼:補碼基礎上按位取反後加一,符號位在取反時不變,加一時最高位符號位有進位的,進位忽略

取反:1000 0000 0101 0010加1:1000 0000 0101 0011

5樓:匿名使用者

十進位制→ 二進位制(怎麼算?要是不知道看計算機基礎的書去)47   → 101111

有符號的整數    原碼    反碼    補碼47      00101111  11010000  00101111(正數補碼和原碼相同)

-47      00101111  11010000  11010001(負數補碼是在反碼上加1)

計算機組成原理:原碼,補碼,反碼,移碼之間的關係?

6樓:匿名使用者

所謂原碼就是二進位制定點表示法,即最高位為符號位,「0」表示正,「1」表示負,其餘位表示數值的大小。  反碼錶示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。

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

7樓:匿名使用者

正數不說.....負數原碼除符號位求反為反碼,反碼末位加1為補碼,補碼符號位改變為移碼。。

計算機的原碼反碼補碼是怎麼回事?可以舉例說

原碼 反碼和補碼是計算機中對 數字二進位制的三種表示方法。1 原碼 原碼 true form 是一種計算機中對數字的二進位制定點表示方法。原碼錶示法在數值前面增加了一位符號位 即最高位為符號位 正數該位為0,負數該位為1 0有兩種表示 0和 0 其餘位表示數值的大小。例如 用8位二進位制表示一個數,...

計算機中關於帶符號整數的反碼 補碼 真值和原碼

原碼 是指將最高位作為符號位 0表示正,1表示負 其它數字位代表數值本身的絕對值的數字表示方式。例如 數字6 在計算機中原碼錶示為 0 000 0110 其中,第一個數字0是符號位,0表示正數,0 000110是數字6的二進位制資料表示。數字 6 在計算機中原碼錶示為 1 000 0110 以上是在...

計算機中負數是以補碼形式存在的,有符號情況下怎麼判斷八位

現在的計算機中,抄都是高 低電平,是電壓訊號。但是,通常是用二進位制數,來表示。這些二進位制數,有些人,就把它們,想像成補碼,用來代表有符號數。其實,並非所有的人,都是這麼想的。比如 mov al,3 add al,125 結果,al 1000 0110b。你可以把它理解成 122,也可以認為是13...