1樓:沙裡波特
計算機中,只是使用補碼存放正負數。
補碼,與正負數一一對應。
有一個公式供你直接轉換,不需要繞道原碼反碼。
另外,移碼=補碼+偏移量。
原碼反碼,在計算機中,都不存在。
2樓:施曉暢茂萍
原碼:如果機器字長為n,那麼一個數的原碼就是用一個n位的二進位制數,其中最高位為符號位:正數為0,負數為1。剩下的n-1位表示概數的絕對值。
例如:x=+101011
,[x]原=
00101011
x=-101011
,[x]原=
10101011
位數不夠的用0補全。
正數的原、反、補碼都一樣:0的原碼跟反碼都有兩個,因為這裡0被分為+0和-0。
反碼:反碼就是在原碼的基礎上,符號位不變其他位按位取反(就是0變1,1變0)就可以了。
例如:x=-101011
,[x]原=
10101011
,[x]反=11010100
補碼:補碼是在反碼的基礎上按照正常的加法運算加1。
例如:x=-101011
,[x]原=
10101011
,[x]反=11010100,[x]補=11010101
ps:0的補碼是唯一的,如果機器字長為8那麼[0]補=00000000。
移碼:移碼不管正負數,只要將其補碼的符號位取反即可。
例如:x=-101011
,[x]原=
10101011
,[x]反=11010100,[x]補=11010101,[x]移=01010101
原碼,反碼和補碼之間有怎樣的計算關係?
3樓:戊力行學珍
原碼,反碼,
補碼的基礎概念和計算方法.
在探求為何機器要使用補碼之前,
讓我們先了解原碼,
反碼和補碼的概念.對於一個數,
計算機要使用一定的編碼方式進行儲存.
原碼,反碼,
補碼是機器儲存一個具體數字的編碼方式.
1.原碼
原碼就是符號位加上真值的絕對值,
即用第一位表示符號,
其餘位表示值.
比如如果是8位二進位制:
[+1]原
=0000
0001
[-1]原
=1000
0001
第一位是符號位.
因為第一位是符號位,
所以8位二進位制數的取值範圍就是:
[1111
1111
,0111
1111]
即[-127
,127]
原碼是人腦最容易理解和計算的表示方式.
2.反碼
反碼的表示方法是:
正數的反碼是其本身
負數的反碼是在其原碼的基礎上,
符號位不變,其餘各個位取反.
[+1]
=[00000001]原
=[00000001]反
[-1]
=[10000001]原
=[11111110]反
可見如果一個反碼錶示的是負數,
人腦無法直觀的看出來它的數值.
通常要將其轉換成原碼再計算.
3.補碼
補碼的表示方法是:
正數的補碼就是其本身
負數的補碼是在其原碼的基礎上,
符號位不變,
其餘各位取反,
最後+1.
(即在反碼的基礎上+1)
[+1]
=[00000001]原
=[00000001]反
=[00000001]補
[-1]
=[10000001]原
=[11111110]反
=[11111111]補
對於負數,
補碼錶示方式也是人腦無法直**出其數值的.
通常也需要轉換成原碼在計算其數值。
4樓:開樂志應奧
原碼:就是原碼,真實的碼
反碼:在原碼的基礎上,符號位不變,數值位按位取反補碼:1)正數的補碼:與原碼相同。
【例1】+9的補碼是00001001。
(2)負數的補碼:符號位為1,其餘位為該數絕對值的原碼按位取反然後整個數加1。
5樓:俎紹輝仁業
原碼正數的符號位為0,負數的符號位為1,其它位按照一般的方法來表示數的絕對值。用這樣的表示方法得到的就是數的原碼。
反碼對於一個帶符號的數來說,正數的反碼與其原碼相同,負數的反碼為其原碼除符號位以外的各位按位取反。
補碼正數的補碼與其原碼相同,負數的補碼為其反碼在最低位加1
6樓:沙裡波特
帶符號的數字,可變成各種**(八位的),見圖:
但是,在計算機中,原碼和反碼都是不存在的。
因此,就不必關心它們了。
只有補碼,才是實用的編碼。
其變換規律,完全可以自己摸索出來。
原碼、補碼、反碼之間是怎樣轉換的?
7樓:立港娜娜
一、正整數的原碼、反碼、補碼完全一樣,即符號位固定為0,數值位相同。
二、負整數的符號位固定為1,由原碼變為補碼時,規則如下:
1、原碼符號位1不變,整數的每一位二進位制數位求反,得到反碼。
2、反碼符號位1不變,反碼數值位最低位加1,得到補碼。
方法:(1)正整數的原碼,反碼和補碼計算。【符號位為0,原碼=反碼=補碼】
(2)負整數的原碼,反碼和補碼計算,先求原碼,再求反碼,最後求補碼。
(3)根據補碼求真值,一般使用圖中的公式計算,正整數符號為+,負整數符號為-,通常完成補碼求真後,可以按步驟1、2簡單的逆推一下,看結果是否正確。
8樓:風翼殘念
正數的原碼、反碼、補碼是一致的。(例如:2的原碼:0000 0010,那麼其反碼和補碼都是0000 0010)
負數的反碼顧名思義,是除了符號位與原碼一致,其餘位都與原碼相反。(例如:-2的原碼是1000 0010,那麼其反碼是1111 1101),負數的補碼則是在其反碼的基礎上加1。
(例如:-2的反碼是1111 1110)
1、首先,數字除了我們平時最長使用的十進位制數外,還有二進位制,八進位制,十六進位制等。這裡我們的原碼,補碼,反碼之間轉換指的是二進位制數。如下。
2、在二進位制數中,數字的正負是根據首位是0還是1來判斷的,如果首位是0,那麼就是正數,首位是1就代表負數。如下圖。
3、從原碼到反碼,如果該數為正數,也保持不變,如果首位是1,也就是說是負數,就將除了首位的1除外的所有數字取反。如下圖所示。點選即可檢視。
4、如果想要把原碼轉換成補碼,對正數來說,補碼與原碼相同,對負數來說,之間將反碼加1就可以得到補碼,計算示例如下圖所示。當然,我們還可以將補碼轉換為原碼。如果是負數得到的補碼,可以通過求該補碼的補碼來得到原來的原碼。如下。
9樓:
首先給的肯定是十進位制數,先轉換為2進位制,然後這一串數字必須為八位別問為啥,得出的二進位制結果放在最後,正數最高位必須為0,中間缺少的地方用0補齊,就得出來了,正數的原碼等於補碼等於補碼,負數的話原碼開頭必須為1,其餘如同上述,反碼最高位也是1,其他數字取相反的比如(1變0,0變1),補碼則在反碼最後一位加1.這是所有結果
10樓:沙裡波特
直接轉換,即可。
比如,12,
其原碼、補碼、反碼,都相等,都是 12。
正數的補碼,是其本身。
負數的補碼,就用它的正數,減一取反,即可得到補碼。
原碼、反碼,根本就沒有用。
所以,在計算機中,也沒有原碼和反碼。
那麼,我們也不必關心這些。
11樓:理工男老
原碼反碼補碼移碼概念和轉換方法
計算機,求反碼和原碼,詳細過程
12樓:潮綠柳奉乙
引入原碼
反碼和補碼的目的就是為了解決減法問題,因為計算機cpu的運算器中只有加法器,要把減法轉化成加法來計算。
舉個例子,a表示十進位制數「+16」,b表示十進位制數「-19」,把這兩個數的原碼直接相加,得:
a=+16
(a)原=00010000
b=-19
(b)原=10010011
00010000
+10010011
————
10100011
其結果符號位為1是負數,其數值位為100011,即等於十進位制數「-35」,這顯然是錯的結果。
再比如,十進位制數「+16」與「+19」的原碼直接相減,得:
00010000
-00010011
————
11111101
結果為「-125」,這又是錯的。
但是引入補碼後,加減法都可以用加法來實現,如「-16+11」的運算:
11110000
+-16的補碼
00001011
11的補碼
————
11111011
-5的補碼
如果是「-16-11」,那麼就轉化為加法運算「-16+(-11)」
11110000
+-16的補碼
11110101
-11的補碼
————
111100101
-27的補碼
在字長為8位的系統中,最高位所產生的進位被自然丟棄,運算結果的機器數為11100101,是-27的補碼形式,結果正確。
順便告訴你一些其它的東西:
1.二進位制數中,兩數的補碼之和等於兩數和的補碼。
2.補碼=反碼+1
3.反碼=原碼除符號位外其它數值取反(即該數的絕對值取反),即「0」變「1」,「1」變「0」。
4.任何正數的原碼
反碼補碼的形式完全相同(即都是自身,不變)
5.在計算機中,有符號的數都是採用補碼來表示的。
6.計算的時候,符號位也參與運算。
13樓:匿名使用者
1. 原碼
原碼就是符號位加上真值的絕對值, 即用第一位表示符號, 其餘位表示值. 比如如果是8位二進位制:
[+1]原 = 0000 0001
[-1]原 = 1000 0001
第一位是符號位. 因為第一位是符號位, 所以8位二進位制數的取值範圍就是:
[1111 1111 , 0111 1111]
即[-127 , 127]
原碼是人腦最容易理解和計算的表示方式.
2. 反碼
反碼的表示方法是:
正數的反碼是其本身
負數的反碼是在其原碼的基礎上, 符號位不變,其餘各個位取反.
[+1] = [00000001]原 = [00000001]反
[-1] = [10000001]原 = [11111110]反
可見如果一個反碼錶示的是負數, 人腦無法直觀的看出來它的數值. 通常要將其轉換成原碼再計算.
3. 補碼
補碼的表示方法是:
正數的補碼就是其本身
負數的補碼是在其原碼的基礎上, 符號位不變, 其餘各位取反, 最後+1. (即在反碼的基礎上+1)
[+1] = [00000001]原 = [00000001]反 = [00000001]補
[-1] = [10000001]原 = [11111110]反 = [11111111]補
對於負數, 補碼錶示方式也是人腦無法直**出其數值的. 通常也需要轉換成原碼在計算其數值.
計算機組成原理:原碼,補碼,反碼,移碼之間的關係?
14樓:匿名使用者
所謂原碼就是二進位制定點表示法,即最高位為符號位,「0」表示正,「1」表示負,其餘位表示數值的大小。 反碼錶示法規定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。
補碼錶示法規定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。
詳細講解一下,詳細講解一下Android WindowsMobile Symbian Palm OS BlackBerry OS iOS這幾種系統的優缺點
你好,這些都是手機的作業系統。nokia symbian 塞班作業系統。mid android手機 一般都用android作業系統windowsmobile 微軟出來的手機作業系統iphone palm os 蘋果自己出的作業系統blackberry os 藍莓作業系統 現在用得比較多就是andro...
幫我詳細講解一下,幫我詳細講解一下
兩聲響,一聲是從空氣傳來的,一聲是鋼管傳來的。先鋼管,後空氣,你可以設鋼管長x米 t s v 這個可以不寫 x340m s x 5000m s 0.3sx約等於109 對錯不確定,有待考證,反正我是這麼寫的 聲音這鋁管中傳播,也在空氣中傳播,聽到的第一個聲音是鋁管中傳過來的,第二個是空氣中傳的 哪位...
具體倒裝句詳細講解,具體倒裝句詳細講解
1.no sooer than 引起的是主從複合句,主句應倒裝,從句不倒裝。它的用法是than前用had 主語 done,也就是過去完成時,than後用did,也就是過去式。這種需要你多背多記。2.a是過去完成時,也就是說這個動作要比failed早,而句子的意思是考試失敗後才意識到學習的重要性,所以...