二進位制轉十進位制,二進位制轉化為十進位制的演算法?

2023-02-14 19:50:04 字數 6356 閱讀 7650

1樓:一顆程式猿

有符號數的話, 最高位為1(就是最左邊那個), 表示負數, 這時候就要按位取反再加1, 得出來的二進位制正常翻譯成十進位制, 然後結果就是負的那個數。

無符號數,或者最高位為0的話, 直接轉換就行了。

二進位制轉化為十進位制的演算法?

2樓:跪著作揖

從最抄低位(最右)算起襲,位上的數字乘以本位的權重。

bai,權重就du是2的第幾位的位數減一次方。zhi

比如第2位就是2的(dao2-1次)方,就是2;第8位就是2的(8-1)次方是128。把所有的值加起來。

2(1-1)代表2的0次方,就是1;其他類推。

比如二進位制1101,換算成十進位制就是:1*2(1-1)+0*2(2-1)+1*2(3-1)+1*2(4-1)=1+0+4+8=13。

3樓:亦若

從最低位(最來右)算起,源位上的數bai字乘以本位的權重du,權重就是zhi2的第幾位的位數。

dao減一次方。

比如第2位就是2的(2-1次)方,就是2;第8位就是2的(8-1)次方是128。把所有的值加起來。

2(1-1)代表2的0次方,就是1;其他類推。

比如二進位制1101,換算成十進位制就是:1*2(1-1)+0*2(2-1)+1*2(3-1)+1*2(4-1)=1+0+4+8=13

4樓:banji的老巢

從最後一位開始算,依次列為第0、1、2...位 ,第n位的數(0或1)乘以2的n次方 ,得到的結果相加專。

就是答案 。

例如屬:01101011.轉十進位制:

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

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

5樓:央夦

【標準來答案】二進位制轉十進自製。

從最後一。bai位開始算,依次du列為第0、1、2...位第n位的數(0或。

zhi1)乘以2的n次方。

得到dao的結果相加就是答案。

例如:01101011.轉十進位制:

第0位:1乘2的0次方=1

1乘2的1次方=2

0乘2的2次方=0

1乘2的3次方=8

0乘2的4次方=0

1乘2的5次方=32

1乘2的6次方=64

0乘2的7次方=0

然後:1+2+0

二進位制01101011=十進位制107.

6樓:匿名使用者

從最低位(最右)算起,位上的數字乘以本位的權重,權重就是2的第幾位的位數內減一次方。

容。比如第2位就是2的(2-1次)方,就是2;第8位就是2的(8-1)次方是128。把所有的值加起來。

2(1-1)代表2的0次方,就是1;其他類推比如二進位制1101,換算成十進位制就是:1*2(1-1)+0*2(2-1)+1*2(3-1)+1*2(4-1)=1+0+4+8=13。

二進位制轉換十進位制的簡單方法?

7樓:匿名使用者

方法一:從右到左用二進位制的每個數去乘以2的相應次方,小數點後則是從左往右。

例:二進位製數轉化成十進位制。

=1*2+0*2+1*2+1*2 +0*2【-1】+1*2【-2】=1+0+4+8+0+方法二:

把二進位製數首先寫成加權係數式,然後按十進位制加法規則求和。這種做法稱為"按權相加"法。

對於有n位整數,m位小數的二進位製數用加權係數式表示,可寫為:n(2)=an-1×2n-1+an-2×2n-2+……a1×21+a0×20+a-1×2-1+a-2×2-2+……a-m×2-m(10)式中aj表示第j位的係數,它為0和1中的某乙個數。

例:二進位製數1101轉化成十進位制。

注意:1、【】括號內數字代表次方,如為二次方,【-1】為負一次方。

2、()括號內代表進製數,(2)為二進位制,(10)為十進位制。

8樓:禮翼跆拳道

計算機 十進位制和二進位制的轉換。

9樓:島上

06如何快速的將二進位制轉換成十進位制。

10樓:匿名使用者

以16進製為橋梁。

10轉16再轉2 或2轉16再轉10

10轉16 也和 10轉2 一樣 就不在論述了主要講 2和16 的互轉。

2轉16 要訣4位化1位 例如 10101111 可以先看成 1010 1111 然後用8421法則 像1010=8+0+2+0=12(10進製)=c(16進製制)因此1010 1111換成16進製制就是cf

16轉2 就是1化4 反過來就行了。

小子 你滴大大的明白?

11樓:隋小魯霽

例:10001

1*(2的4次方)+0*(2的3次方)+…1*(2的0次方)2的零次方=1

我的表達能力不太好,只能舉例子。

12樓:匿名使用者

本來就很簡單了 記住2的0次方到10次方(一般考試都是10位以內). 都常見 1 2 4 8 16 32 64 128 256 512 1024 ..就是記憶體的不斷進步。

看到二進位制整數就從右到左直接在上面標上,遇到0的就標0,把標上的一加就ok,小數點後的從左到右標 0.

125 ..也是遇到0的就標0,加上。像你這題就是從左到右 1024+0+0+128+0+32+16+0+4+0+1=1205 小case

13樓:匿名使用者

咱們一般用十進位制,就是加十個數進一位,二進位制就是加兩個數就進一位 1就是1, 2就是10 ,3就是101, 4就是110 ,5就是111 ..看出來規律了吧,其實並不難。

要是用四位數表示就是0001 0010 0011 0101 0110

0111 咱們一般用十進位制,就是加十個數進一位,二進位制就是加兩個數就進一位 1就是1, 2就是10 ,3就是101, 4就是110 ,5就是111 ..看出來規律了吧,其實並不難。

要是用四位數表示就是0001 0010 0011 0101 0110

14樓:風逐青

2的10次是1024,按照1024 512 256 128 64 32 16 8 4 2 1對應相加就可以了,位數再多點就不好算了。

15樓:匿名使用者

簡單的就是課本上教的。。這個沒什麼簡便的,其實課本上說的方法就很簡單。

不知道你知道方法不,方法網上有很多的。

另。你對c有興趣啊,不知道你現在多大,c或c++大學肯定學的,所以其實沒必要現在學這個,要學的話也學c++,c快淘汰了,現在已經有不少大學不修c,修c++了,如果你對程式設計有興趣的話,建議學學vb,vb和c基本都可以認為是比較基礎的。vb有很多對初學者的好處,你自己考慮,相信我,學vb

16樓:匿名使用者

看一眼就能轉換的,根本沒有捷徑,方法是:例:11001

1*(2的4次方)+1*(2的3次方)+0*(2的3次方)+0*(2的2次方)+1*(2的0次方)

17樓:oo寧

電腦上面有個計算器啊,那個就可以把二進位制很快的轉換成十進位制,要用科學型。。。

這個就很快 ,如果你要口算,那我就沒有辦法了。。。我覺得電腦快多了。。

18樓:匿名使用者

熟悉下2的n次冪吧。這東西就是熟能生巧。

先練習下8位的。

自己找找感覺。

19樓:

用電腦裡的計算器,選科學型的,可以直接轉換的。

20樓:金柏匯

of course

10010110101可以看成是(從後往前讀)1*2^0+0*2^1+1*2^2+0*2^3+1*2^4……+1*2^10

算起來還是比較煩的。

十進位製數——二進位製數。

例: 2)先看整數字。

從下往上讀,得到整數字為1000000;

再看小數字。

個位數字為0,再取小數點後的數) (個位數字為0)

(個位數字為1)

一直乘到所得數字正好為1為止,再自上往下依次讀出所有的數,則;

所以別有畏懼心理 呵呵。

自己再出幾道題算一算吧!

用電腦裡的計算器驗算一下!

我相信,還有其他演算法!

自己推敲吧。

21樓:匿名使用者

有啊 但不可能一眼看出。

10010110101可以看成是(從後往前讀)1*2^0+0*2^1+1*2^2+0*2^3+1*2^4……+1*2^10

算起來還是比較煩的。

十進位製數——二進位製數。

例: 2)先看整數字。

從下往上讀,得到整數字為1000000;

再看小數字。

個位數字為0,再取小數點後的數) (個位數字為0)

(個位數字為1)一直乘到所得數字正好為1為止,再自上往下依次讀出所有的數,則;

所以別有畏懼心理 呵呵。

(我是學pascal的,個人衷心希望你也學pascal,noip用pascal的比用c++或c的多得多~)

自己再出幾道題算一算吧!

用電腦裡的計算器驗算一下!

二進位制如何轉化為十進位制

22樓:漫長年輪的風呀

口訣:整數二進位製用數值乘以2的冪次依次相加,小數二進位製用數值乘以2的負冪次然後依次相加。

1、整數二進位制轉換為十進位制:首先將二進位製數補齊位數,首位如果是0就代表是正整數,如果首位是1則代表是負整數。

若二進位制補足位數後首位為1時,如下圖所示,就需要先取反再換算:

2、小數的二進位制轉換為十進位制:將二進位制中的四位小數分別於下邊(如下圖所示)對應的值相乘後相加得到的值即為換算後的十進位制。

23樓:為江山放棄了愛

方法:要從右到左用二進位制的每個數去乘以2的相應次方,小數點後則是從左往右。

例如:二進位製數轉化成十進位制。

二進位制)=1*2^0+0*2^1+1*2^2+1*2^3 +0*2^-1+1*2^-2=1+0+4+8+0+十進位制)

所以總結起來通用公式為:

二進位制)=d*2^0+c*2^1+b*2^2+a*2^3+e*2^-1+f*2^-2+g*2^-3(十進位制)

24樓:薔祀

方法:「按權求和」

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

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

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

(2)十進位制轉二進位制。

· 十進位制整數轉二進位製數:「除以2取餘,逆序排列」(除二取餘法)【例】:

25樓:吠君子

教你把二進位制化成十進位制的方法。

26樓:center丿

06如何快速的將二進位制轉換成十進位制。

27樓:匿名使用者

自己用筆算bai

的方法:轉換的方du法是。

把各個zhi為拆開。乘以2的次冪。dao末尾內位乘2的0次冪。依次類推。

比如:10010111

十進容制=1*2^7+0*2^6+0*2^5+1*2^4+0*2^3+1*2^2+1*2+1*2^0

ps:末尾位是2的零次冪,所以是1

28樓:司涉富察慧穎

"二進位制轉十進位制,十進位制轉二進位制的演算法介紹十進位制轉二進位制:

用2輾轉相除至結果為1

將餘數專和最後的屬1從下向上倒序寫。

就是結果。例如:302轉化成二進位制。

餘0151/2=75

餘175/2=37

餘137/2=18

餘118/2=9

餘09/2=4

餘14/2=2

餘02/2=1

餘0故二進位制為100101110

二進位制轉十進位制。

從最後一位開始算,依次列為第0、1、2...位第n位的數(0或1)乘以2的n次方得到的結果相加就是答案。

例如:01101011.轉十進位制:

第0位:1乘2的0次方=1

1乘2的1次方=2

0乘2的2次方=0

1乘2的3次方=8

0乘2的4次方=0

1乘2的5次方=32

1乘2的6次方=64

0乘2的7次方=0

之後:1+2+0+8+0+32+64+0=107.二進位制01101011=十進位制107."

二進位制如何轉化為十進位制?二進位制怎樣轉換為十進位制?

二進位制是一種由0和1組成的數字系統,而十進位制是一種由0到9這10個數字組成的數字系統。將乙個二進位製數轉化為十進位制,可以使用以下方法 從二進位製數的最右邊 即最低位 開始,將每一位的值乘以2的冪,冪的指數從0開始逐次增加1。將每一位的乘積相加,得到最終的十進位製數。例如,將二進位製數10110...

二進位製數如何轉化成十進位製數二進位製數如何轉換成十進位製數?

各位次上的數字乘以2的n n是所在位次數減一 次冪相加 例如 二進位製數1101轉化為十進位制就是1 2e3 1 2e2 0 e1 1 2e0 13 二進位製數第0位的權值是2的0次方,第1位的權值是2的1次方 所以,設有乙個二進位製數 0110 0100,轉換為10進製為 下面是豎式 0110 0...

matlab二進位制十進位制轉化問題

二進位制轉換為十進位制有現成的函式 bin2dec matlab二進位制轉十進位制 可以復用fread讀取二進位制制檔案 比如 fid fopen bin m fread fid,uint8 fclose fid 將二進位制資料按bai八位無符號整數讀入dum,為乙個向量,若知道zhi長寬 fid ...