對十進位制的2進行按位非操作,怎麼結果是十進位制的

2021-03-03 21:01:36 字數 5896 閱讀 1583

1樓:一顆程式猿

假設按照8位來算

2的二進位制為 0000 0010

取反(~)運算後結果為 1111 1101最高為是1, 所以是負數, 也就是-3的補碼所以結果-3

c語言程式:輸入一個十進位制整數,輸出該數值的二進位制表示(使用按位運算子)

2樓:bm百夢

除二取餘法,主函式自己寫。

void binary(int n);

for(j=i-1;j>=0;j--)

printf("%d",a[i]);

}大概是這樣子

3樓:匿名使用者

#include

void main()

4樓:匿名使用者

#include

// main

int main()

;char* p = b;

int i = 32;

while(i--)

printf_s("%s\n", b);

return 0;}

與運算&只是對2進位制運算嗎?我如果把十進位制的整數進行&運算,結果會怎樣?

5樓:匿名使用者

系統會自動幫你轉換成2進位制進行與運算,然後給你十進位制結果,其實。。。計算機都是二進位制運算的

6樓:山_中_霧_嵐

&是按位與,操作過程是把十進位制數變為二進位制數,按位相與,無進位

7樓:匿名使用者

你在程式中寫的「十進位制數」,實際上計算機編譯時已經都把它變成二進位制的了。

例如,你寫的123 & 321,寫的雖然是兩個「十進位制數」,但編好的的計算機程式裡,實際上123已經化成二進位制的1111011,321已經化成二進位制的101000001。

它們作&運算的結果是二進位制的1000001。

而這個二進位制的1000001化成十進位制是65。

二進位制怎麼轉化成十進位制?

8樓:center丿

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

9樓:匿名使用者

從最低位(最右)算起,位上的數字乘以本位的權重,權重就是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

10樓:啦啦啦啦崔小淨

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

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

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

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

11樓:zyp710810嘟

二進位制怎麼轉化成十進位制轉換的方法是:

把各個為拆開。乘以2的次冪。末尾位乘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。

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

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

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

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

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

二進位制與十進位制的區別在於數碼的個數和進位規律有很大的區別,顧名思義,二進位制的計數規律為逢二進一,是以2為基數的計數體制。10這個數在二進位制和十進位制中所表示的意義完全不同,在十進位制中就是我們通常所說的十,在二進位制中,其中的一個意義可能是表示一個大小等價於十進位制數2的數值。

仿照例題1.3.1,我們可以將二進位制數10表示為:10=1×2^1+0×2^0

十進位制與二進位制的關係

一般地,任意二進位制數可表示為:

例題 1.3.2 試將二進位制數(01010110)b轉換為十進位制數。

解:將每一位二進位制數乘以位權後相加便得相應的十進位制數

在數位電子技術和計算機應用中,二值資料常用數字波形來表示。使用數字波形可以使得資料比較直觀,也便於使用電子示波器進行監視。圖1.3.3表示一計數器的波形。

圖1.3.3 用二進位制數表示0~15波形圖

圖中給出了四個二進位制波形。看這種二進位制波形圖時,我們應當沿著圖中虛線所示的方向來看,即使圖中沒有標出虛線(一般都沒有標出),也要想象出虛線來。其中在每一個波形上方的數字表示了與波形對應的位的數值,最後一行則是相應的十進位制數 ,其中lsb是英文least significant bit的縮寫,表示最低位,msb是most significant bit的縮寫,表示二進位制數的最高位。

顯然,這是一組4位的二進位制數,總共有16組,最左邊的二進位制數為0000,最上邊的波形代表二進位制數的最低位,也就是通常在十進位制數中我們所說的個位數,最下面的是最高位。圖中最右邊的二進位制數為1111,對應的十進位制數為15。再來看看對應於十進位制數5的二進位制數是多少呢?

是0101,對了,讀數的順序是從下往上。

二進位制數在數字系統(比如計算機之間)中的傳輸的方式分為序列和並行兩種。

其中序列傳輸時二進位制數是按照逐位傳遞的方式進行傳輸,根據實際情況可以從最高位或最低位開始傳輸,一般情況下是從最高位開始傳輸的。只需要一根資料線。如圖1.

3.4所示,要完成八位二進位制數的傳輸,需要經歷八個時鐘週期。

圖1.3.4 二進位制資料的序列傳輸

(a) 兩臺計算機之間的序列通訊 (b) 二進位制資料的序列表示

典型的例子是調變解調器與計算機之間的通訊就是通過序列傳輸來完成的。

並行傳輸的效率要高於序列傳輸,一次可以傳輸完整的一組二進位制數。但是根據所要傳輸的二進位制數的位數的多少,需要備足足夠多的資料線。一般來說,常見的並行傳輸採用的資料線有8、16、32等,再多就很少見了。

典型的並行傳輸例子是印表機與計算機之間的通訊傳輸,見圖1.3.5。

圖1.3.5 並行傳輸資料的示意圖

(a) 計算機與印表機之間的並行通訊 (b) 二進位制資料的並行表示

圖1.3.5顯示了採用並行傳輸模式,只需要一個時鐘週期,即可完成八位二進位制數的傳輸。

12樓:1絲冷風

上面的都是基本換算的方法,結果雖然正確,但換算很慢,不能口算出結果(因為要記權、乘、加很多次)。最快捷的辦法,就是先把二進位制換成十六進位制,再計算得十進位制數(255以內可以做到口算)。例:

10111001=b9=16*11+9=185

13樓:傷a痕

二進位制: 11 0010 0111 0001.011

轉換成十進位制:=2^13+2^12+2^9+2^6+2^5+2^4+2^0+2^(-2)+2^(-3)

14樓:友萍華虹

0.110011001100......1100......

十進位制數轉換為二進位制數的方法:整數部分採用除2取餘法、小數部分採用乘2取整法分別轉換後組合得到。除2取餘法:

逐次除以2,每次求得的餘數即為二進位制數整數部分各位的數碼,直到商為0;乘2取整法:逐次乘以2,每次乘積的整數部分即為二進位制數小數各位的數碼。

15樓:藍巍智初晴

左起的第三位數值1,等於十進位制數的2,1011是十進位制的11。

二進位制轉十進位制:

要從右到左用二進位制的每個數去乘以2的相應次方(次方要從0開始算起)例如:二進位制數1101轉化成十進位制

1101(2)=1*20+0*21+1*22+1*23=1+0+4+8=13

或者用下面這種方法:

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

2的0次方是1(任何數的0次方都是1,0的0次方無意義)2的1次方是2

2的2次方是4

2的3次方是8

2的4次方是16

2的5次方是32

2的6次方是64

2的7次方是128

2的8次方是256

2的9次方是512

2的10次方是1024

2的11次方是2048

2的12次方是4096

2的13次方是8192

2的14次方是16384

2的15次方是32768

2的16次方是65536

2的17次方是131072

2的18次方是262144

2的19次方是524288

2的20次方是1048576

即:......1024

512256

12864

321684

21......

此時,1101=8+4+0+1=13

再比如:二進位制數1000110轉成十進位制數可以看作這樣:

數字中共有三個1

即第二位一個,第三位一個,第七位一個,然後對應十進位制數即2的1次方+2的2次方+2的6次方,

即1000110=64+0+0+0+4+2+0=70

16樓:南追

先了解熟悉的十進位制轉二進位制:要用這種方法首先得會十進位制轉

二級制的除以2取餘的方法。十進位制轉二進位制:將餘數和最後的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

1÷2=0餘1

故二進位制為從下往上寫 100101110。

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

再聯想到 二進位制轉十進位制

從右邊第一個數數起,第一位是乘以10的0次方, 第二位乘以10的1次方, 以此類推。

例如100101110

2進位制8進位制10進位制16進位制各個之間如何進行換算?

17樓:肥仙女

一、二進位制與十進位制之間的轉換:

1、十進位制轉二進位制,方法為:十進位制數除2取餘法,即十進位制數除2,餘數為權位上的數,得到的商值繼續除2,依此步驟繼續向下運算直到商為0為止。

2、二進位制轉十進位制,方法為:把二進位制數按權、相加即得十進位制數。

二、二進位制與八進位制之間的轉換:

1、二進位制轉八進位制,3位二進位制數按權相加得到1位八進位制數。(注意事項,3位二進位制轉成八進位制是從右到左開始轉換,不足時補0)。

2、八進位制轉成二進位制,方法為:八進位制數通過除2取餘法,得到二進位制數,對每個八進位制為3個二進位制,不足時在最左邊補零。

三、二進位制與十六進位制之間的轉換

1、二進位制轉十六進位制,方法為:與二進位制轉八進位制方法近似,八進位制是取三合一,十六進位制是取四合一。(注意事項,4位二進位制轉成十六進位制是從右到左開始轉換,不足時補0)。

2、十六進位制轉二進位制,方法為:十六進位制數通過除2取餘法,得到二進位制數,對每個十六進位制為4個二進位制,不足時在最左邊補零。

十進位制是誰發明的

中國人 周易 確定bai了十進位制du 和二進位制 卜辭 中記載zhi說,商dao代的人們已經專學會用一 二 三 四 屬五 六 七 八 九 十 百 千 萬這13個單字記十萬以內的任何數字,但是現在能夠證實的當時最大的數字是三萬。甲骨卜辭中還有奇數 偶數和倍數的概念。同時,我國大約在商周時期已經有了四...

16進位制80的補碼錶示十進位制的真值是多少

80h的二進位制數是 10000000,這是補碼,轉換成原碼就是 1 00000000,相當於 128。16進位制 用16作為基數的計數系統。用數字0 9和字母a f 或其大寫a f 表示0到15。十六進位制數轉換成十進位制數 2進位制,用兩個阿拉伯數字 0 1 8進位制,用八個阿拉伯數字 0 1 ...

含小數的二進位制轉10進位制怎麼轉十進位制的小數怎麼轉換成二進位制

需要準備的工具 紙,筆。1 首先十進位制的小數轉換為二進位制,主要是小數部分乘以2,取整數部分依次從左往右放在小數點後,直至小數點後為0。例如十進位制的0.125,要轉換為二進位制的小數。2 轉換為二進位制,將小數部分0.125乘以2,得0.25,然後取整數部分0。3 再將小數部分0.25乘以2,得...