二進位制計算方法,二進位制的計算方法

2021-12-25 17:29:57 字數 6461 閱讀 9371

1樓:

給你舉個例子把,將十進位制的240轉化為2進製240/2=120......0

(表示餘數是0,下同)

120/2=60........0

60/2=30..........0

30/2=15..........0

15/2=7...........1

7/2=3.............1

3/2=1.............1

1/2=0.............1

因此240的二進位制是1111

0000

2樓:匿名使用者

選d 用*2取整法

11/128=0.0859375 .....整數部分0.

0859375*2=0.171875 .....00.

171875*2=0.34375 .......00.

34375*2=0.6875 .........00.

6875*2=1.375 ...........1 去掉整數的10.

375*2=0.75 .............00.

75*2=1.5 ...............1 去掉整數的10.

5*2=1 ..................1 去掉整數的1,去掉後為0,結束

然後從上往下排,前面加0. 所以結果為0.0001011

二進位制的計算方法

3樓:橘子閃爍

二進位制運算:

1、加法有四種情況:

0+0=0,0+1=1,1+0=1,1+1=10。

0進製為1

【例1103】求 1011(2)+11(2) 的和

解:2、乘法有四種情況:

0×0=0,1×0=0,0×1=0,1×1=1。

3、減法:

0-0=0,1-0=1,1-1=0,0-1=1。

4、除法:

0÷1=0,1÷1=1。

換算方法:

1、與十進位制:

二進位制轉十進位制的方法:「按權求和」

【例】:

規律:個位上的數字的次數是0,十位上的數字的次數是1,......,依次遞增,而十

分位的數字的次數是-1,百分位上數字的次數是-2,依次遞減。

注意:不是任何乙個十進位制小數都能轉換成有限位的二進位制數。

十進位制轉二進位制:

十進位制整數轉二進位制數:「除以2取餘,逆序排列」

例如:89÷2 ……1

44÷2 ……0

22÷2 ……0

11÷2 ……1

5÷2 ……1

2÷2 ……0

2、與八進位制:

二進位制數轉換成八進位制數:從小數點開始,整數部分向左、小數部分向右,每3位為一組用一位八進位制數的數字表示,不足3位的要用「0」補足3位,就得到乙個八進位制數。

八進位制數轉換成二進位制數:把每乙個八進位制數轉換成3位的二進位制數,就得到乙個二進位制數。

八進位制數字與十進位制數字對應關係如下:

000 -> 0 | 004-> 4 | 010=8

001 -> 1 |005 -> 5| 011=9

002 -> 2 |006 -> 6 | 012=10

003 -> 3 |007 -> 7 | 013=11

例如:將八進位制的37.416轉換成二進位制數:

3 7 . 4 1 6

011 111 .100 001 110

即:(37.416)8 =(11111.10000111)2

3、與十六進製制:

二進位制數轉換成十六進製制數:二進位制數轉換成十六進製制數時,只要從小數點位置開始,向左或向右每四位二進位制劃分一組,然後寫出每一組二進位制數所對應的十六進製制數碼即可。

十六進製制數轉換成二進位制數:把每乙個十六進製制數轉換成4位的二進位制數,就得到乙個二進位制數。

十六進製制數字與二進位制數字的對應關係如下:

0000 -> 0 0100 -> 4 1000 -> 8 1100 -> c

0001 -> 1 0101 -> 5 1001 -> 9 1101 -> d

0010 -> 2 0110 -> 6 1010 -> a 1110 -> e

0011 -> 3 0111 -> 7 1011 -> b 1111 -> f

4樓:酈秀榮居書

2、符號位的表示:最常用的表示方法有原碼、反碼和補碼。

(1)原碼表示法:乙個機器數x由符號位和有效數值兩部分組成,設符號位為x0,x真值的絕對值|x|=x1x2x3...xn,則x的機器數原碼可表示為:

[x]原=

,當x>=0時,x0=0,當x<0時,x0=1。

例如:已知:x1=-1011b,x2=

+1001b,則x1,x2有原碼分別是

[x1]

原=11011b,[x2]原=01001b

規律:正數的原碼是它本身,負數的原碼是取絕對值後,在最高位(左端)補「1」。

(2)反碼表示法:乙個負數的原碼符號位不變,其餘各位按位取反就是機器數的反碼表示法。正數的反碼與原碼相同。

按位取反的意思是該位上是1的,就變成0,該位上是0的就變成1。即1=0,0=1

(3)補碼表示法:

首先分析兩個十進位制數的運算:78-38=41,79+62=141

如果使用兩位數的運算器,做79+62時,多餘的100因為超出了運算器兩位數的範圍而自動丟棄,這樣在做78-38的減法時,用79+62的加法同樣可以得到正確結果。

模是批乙個計量系統的測量範圍,其大小以計量進製的基數為底數,位數為指數的冪。如兩位十進位制數的測量範圍是1——9,溢位量是100,模就是102=100,上述運算稱為模運算,可以寫作:

79+(-38)=79+62

(mod

100)

進一步寫為

-38=62,此時就說

–38的補法(對模100而言)是62。計算機是一種有限字長的數字系統,因此它的運算都是有模運算,超出模的運算結果都將溢位。n位二進位制的模是2n,

乙個數的補碼記作[x]補,設模是m,x是真值,則補碼的定義如下:

例:設字長n=8位,x=-1011011b,求[x]補。

解:因為

n=8,所以模

m=28=100000000b,x<0,所以

[x]補=m+x=100000000b-1011011b=10100101b

注意:這個x的補碼的最高位是「1」,表明它是乙個負數。對於二進位制數還有一種更加簡單的方法由原碼求出補碼:

(1)正數的補碼表示與原碼相同;

(2)負數的補碼是將原碼符號位保持「1」之後,其餘各位按位取反,末位再加1便得到補碼,即取其原碼的反碼再加「1」:[x]補=[x]反+1。

下表列出

的8位二進位制原碼,反碼和補碼並將補碼用十六進製制表示。

真值原碼(b)

反碼(b)

補碼(b)

補碼(h)

+127

0111

1111

0111

1111

0111

1111

7f+39

0010

0111

0010

0111

0010

0111

27+0

0000

0000

0000

0000

0000

0000

00-0

1000

0000

1111

1111

0000

0000

00-39

1010

0111

1101

1000

1101

1001

d9-127

1111

1111

1000

0000

1000

0001

81-128

無法表示

無法表示

1000

0000

80從上可看出,真值+0和-0的補碼表示是一致的,但在原碼和反碼表示中具有不同形式。8位補碼機器數可以表示-128,但不存在+128的補碼與之對應,由此可知,8位二進位制補碼能表示數的範圍是-128——+127。還要注意,不存在-128的8位原碼和反碼形式。

5樓:鄢問碩如南

二進位制是計算技術中廣泛採用的一種數制。二進位制資料是用0和1兩個數碼來表示的數。它的基數為2,進製規則是「逢二進一」,借位規則是「借一當二」,由18世紀德國數理哲學大師萊布尼茲發現。

當前的計算機系統使用的基本上是二進位制系統,資料在計算機中主要是以補碼的形式儲存的。計算機中的二進位制則是乙個非常微小的開關,用「開」來表示1,「關」來表示0。

20世紀被稱作第三次科技革命的重要標誌之一的計算機的發明與應用,因為數字計算機只能識別和處理由『0』.『1』符號串組成的**。其運算模式正是二進位制。

19世紀愛爾蘭邏輯學家喬治布林對邏輯命題的思考過程轉化為對符號"0''.''1''的某種代數演算,二進位制是逢2進製的進製。0、1是基本算符。

因為它只使用0、1兩個數字符號,非常簡單方便,易於用電子方式實現。

加法有四種情況:

0+0=0

0+1=1

1+0=1

1+1=10

0進製為1

【例1103】求

1011(2)+11(2)

的和乘法

有四種情況:

0×0=0

1×0=0

0×1=0

1×1=1

減法0-0=0,1-0=1,1-1=0,0-1=1。

除法0÷1=0,1÷1=1。

拈加法拈加法二進位制是加減乘除外的一種特殊演算法。

拈加法運算與進行加法類似,但不需要做進製。此演算法在博弈論(game

theory)中被廣泛利用

計算機中的十進位制小數轉換二進位制

計算機中的十進位制小數用二進位制通常是用乘二取整法來獲得的。

比如0.65換算成二進位制就是:

0.65×2

=1.3

取1,留下0.3繼續乘二取整

0.3×2=

0.6取0,

留下0.6繼續乘二取整

0.6×2=

1.2取1,留下0.2繼續乘二取整

0.2×2=

0.4取0,

留下0.4繼續乘二取整

0.4×2=

0.8取0,

留下0.8繼續乘二取整

0.8×2=

1.6取1,

留下0.6繼續乘二取整

0.6×2=

1.2取1,留下0.2繼續乘二取整

.......

一直迴圈,直到達到精度限制才停止(所以,計算機儲存的小數一般會有誤差,所以在程式設計中,要想比較兩個小數是否相等,只能比較某個精度範圍內是否相等。)。這時,十進位制的0.

65,用二進位制就可以表示為:01010011。

還值得一提的是,在計算機中,除了十進位制是有符號的外,其他如二進位制、八進位制、16進製制都是無符號的。

在現實生活和記數器中,如果表示數的「器件」只有兩種狀態,如電燈的「亮」與「滅」,開關的「開」與「關」。一種狀態表示數碼0,另一種狀態表示數碼1,1加1應該等於2,因為沒有數碼2,只能向上乙個數字進一,就是採用「滿二進一」的原則,這和十進位制是採用「滿十進一」原則完全相同。

1+1=10,10+1=11,11+1=100,100+1=101,

101+1=110,110+1=111,111+1=1000,……,

可見二進位制的10表示二,100表示四,1000表示八,10000表示十六,……。

二進位制同樣是「位值制」。同乙個數碼1,在不同數字上表示的數值是不同的。如11111,從右往左數,第一位的1就是一,第二位的1表示二,第三位的1表示四,第四位的1表示八,第五位的1表示十六。

所謂二進位制,也就是計算機運算時用的一種演算法。二進位制只由一和零組成。

比方說吧,你上一年級時一定聽說過「進製筒」(「數字筒」)吧!十進位制是個位上滿十根小棒就捆成一捆,放進十位筒,十位筒滿十捆就捆成一大捆,放進百位筒……

二進位制也是一樣的道理,個位筒上滿2根就向十位進一,十位上滿兩根就向百位進一,百位上滿兩根……

二進位制是世界上第一台計算機上用的演算法,最古老的計算機裡有乙個個燈泡,當運算的時候,比如要表達「一」,第乙個燈泡會亮起來。要表達「二」,則第乙個燈泡熄滅,第二個燈泡就會亮起來。

二進位制就是等於2時就要進製。

0=00000000

1=00000001

2=00000010

3=00000011

4=00000100

5=00000101

6=00000110

7=00000111

8=00001000

9=00001001

10=00001010

……即是逢二進一,二進位制廣泛用於最基礎的運算方式,計算機的執行計算基礎就是基於二進位制來執行。只是用二進位制執行運算,用其他進製表現出來。

其實把二進位制三位一組分開就是八進位制,

四位一組就是十六進製制

二進位制補碼運算溢位判斷,計算機中二進位制加減法時,是如何判斷溢位的?

補碼運算的溢位判別方式為雙高位判別法,利用cs表示符號位是否進製,利用cp表示最高數值位是否進製。如果cs cp的結果為真,則代表發生了溢位 運算結果大於0則為負溢位,小於0則為正溢位 否則運算結果正確。例如 1000 0011 補碼為 3,原碼為 125 0000 0011 補碼為3,原碼為3 1...

二進位制補碼怎麼計算的

1 正數的補碼表示 正數的補碼 原碼 負數的補碼 or 以十進位制整數 97和 97為例 97原碼 0110 0001b 97補碼 0110 0001b 97原碼 1110 0001b 97補碼 1001 1111b 2 純小數的原碼 純小數的原碼如何得到呢?方法有很多,在這裡提供一種較為便於筆算的...

十進位制轉二進位制原理,十進位制轉二進位制的這方法的數學原理是什麼啊?求大神詳解!

用2輾轉相除至結果為1 將餘數和最後的1從下向上倒序寫 就是結果 例如302 302 2 151 餘0 151 2 75 餘1 75 2 37 餘1 37 2 18 餘1 18 2 9 餘0 9 2 4 餘1 4 2 2 餘0 2 2 1 餘0 故二進位制為100101110 二進位制轉十進位制 從...