當前位置:首頁 » 電腦資訊 » 二進制文件里為什麼是小數

二進制文件里為什麼是小數

發布時間: 2022-09-07 03:52:30

A. 二進制小數如何表示

首先,給出一個任意實數,例如0.6,文字描述該過程如下:

將該數字乘以2,取出整數部分作為二進製表示的第1位;然後再將小數部分乘以2,將得到的整數部分作為二進製表示的第2位;以此類推,知道小數部分為0。

特殊情況:小數部分出現循環,無法停止,則用有限的二進制位無法准確表示一個小數。

下面具體計算一下0.6的小數表示過程

0.6 * 2 = 1.2 ——————- 1

0.2 * 2 = 0.4 ——————- 0

0.4 * 2 = 0.8 ——————- 0

0.8 * 2 = 1.6 ——————- 1

0.6 * 2 = 1.2 ——————- 1

…………

可以發現在該計算中已經出現了循環,0.6用二進製表示為 1001 1001 1001 1001 ……

如果是10.6,那個10.6的完整二進製表示為 1010.100110011001……




(1)二進制文件里為什麼是小數擴展閱讀

小數的二進制計算

十進制小數轉換成二進制小數採用「乘2取整,順序排列」法。具體做法如下:

用2乘十進制小數,可以得出積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。然後把取出的整數部分按順序排列起來。

先取的整數作為二進制小數的高位有效位,後取的整數作為低位有效位。

B. 二進制除了有1和0還有小數點嗎 似乎沒有吧 可是這題有!

二進制只能用0和1表示。二進制的轉換中,整數與小數分別轉換。以二進制與十六進制之間轉換來說,轉換方法為:以小數點為界,分別向左右每四位二進制合成一位十六進制數,或每一位十六進制數展成四位二進制數,不足四位者補0。所以,
(0101.0010)2=(5.2)16
(101101101001011.01101)2=(0101 1011 0100 1011.0110 1000)2=(5B4B.68)16
(ABCD.EF)16=(1010 1011 1100 1101.1110 1111)2

C. 二進制打開Exe文件,每個字元中間有個小數點,什麼意思

程序定義的字元是寬字元,一個字元占兩個位元組,另一個位元組為00,在UltraEdit或反匯編程序窗口中,一般不可顯示字元(0~31)都顯示為小數點,這是"我使用UltraEdit打開生成的EXE發現每個X中間都有一個.(小數點),當"的原因

當你用編程方式改字元串時,你可能是按單位元組方式修改的,這樣原來的字元 00 X 被你強制改成了X X,因你只是改數據,程序當然能運行,只是系統不識別X X編碼,看來就是亂碼了

我使用UE再次打開程序,發現新的字元串中間沒有.(小數點),新的字元串長度為20, 彈窗的內容卻是(亂碼+10個X).我不知道為什麼?-----因你修改的原因

D. 二進制中,小數點後的數是什麼意思

用二進製表示小數是非常復雜的,很少這么用。需要小數時,我們一般也用整數表示,例如整數100代表1,整數10代表0.1,整數1代表0.01,就是把整數數值除以100,得到2位小數。

E. 二進制有沒有小數,如果有怎麼轉換成十進制

二進制中有小數呀!帶小數的二進制轉換成十進制的要求就是使用這個公式:S=Kn×2(n)+K(n-1)×2(n-1)+K2×2(2)+K1×2(1)+K0×2(0)+K-1×2(-1)+K-2×2(-2)我寫的括弧中的內容是2的次方。也就是小數點前邊的數使用的是正次方,而小數點後面的數使用的是負次方。將二進制小數代入這個公式就可以了。

F. 二進制後面的小數點怎麼算

二進制轉十進制:
個位上的數字的次數是0,十位上的數字的次數是1,......,依次遞增,而十分位的數字的次數是-1,百分位上數字的次數是-2,......,依次遞減。
如:
計算機中的十進制小數用二進制通常是用乘二取整法來獲得的。
比如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,用二進制就可以表示為:0.1010011。
(6)二進制文件里為什麼是小數擴展閱讀:
1、二進制優點:
數字裝置簡單可靠,所用元件少;
只有兩個數碼0和1,因此它的每一位數都可用任何具有兩個不同穩定狀態的元件來表示;
基本運算規則簡單,運算操作方便。
2、二進制缺點:
用二進製表示一個數時,位數多。因此實際使用中多採用送入數字系統前用十進制,送入機器後再轉換成二進制數,讓數字系統進行運算,運算結束後再將二進制轉換為十進制供人們閱讀。
二進制和十六進制的互相轉換比較重要。不過這二者的轉換卻不用計算,每個C,C++程序員都能做到看見二進制數,直接就能轉換為十六進制數,反之亦然。
我們也一樣,只要學完這一小節,就能做到。
首先我們來看一個二進制數:1111,它是多少呢?
你可能還要這樣計算:1
×

+
1
×

+
1
×

+
1
×

=
1
×
1
+
1
×
2
+
1
×
4
+
1
×
8
=
15。
然而,由於1111才4位,所以我們必須直接記住它每一位的權值,並且是從高位往低位記,:8、4、2、1。即,最高位的權值為2³
=
8,然後依次是

=
4,2¹=2,

=
1。
記住8421,對於任意一個4位的二進制數,我們都可以很快算出它對應的10進制值。
參考資料:
搜狗網路-二進制

G. 二進制可以帶小數點嗎

可以有,比如我在用STM32F103處理器時,在UART中設置波特率時,有個分頻的寄存器USART_BRR的位[15:4]用來存放分頻的整數部分,位[3:0]用來存放分頻的小數部分,這個整數和小數部分都要轉換為十六進的整數和小數.至於2或16進制和10進制小數的轉換,網路搜索就知道了
當然這是ST公司本身就規定好的。但是一般程序中沒這種2進制直接帶小數的,都是需要在人為知道某種約定下進行。
可能有點答非所問

熱點內容
為什麼淘寶簽收失敗 發布:2024-11-20 02:36:02 瀏覽:56
為什麼淘寶說自己未授權 發布:2024-11-20 02:30:43 瀏覽:699
為什麼晚上12點左右就會餓 發布:2024-11-20 02:29:42 瀏覽:458
ai文件儲存為什麼找不到此文件 發布:2024-11-20 02:29:16 瀏覽:520
為什麼晚上發燒反而更嚴重 發布:2024-11-20 02:11:42 瀏覽:95
為什麼女人壽命很長 發布:2024-11-20 02:11:32 瀏覽:506
淘寶打開為什麼首頁變成黑白 發布:2024-11-20 02:07:18 瀏覽:955
教室混響時間為什麼短暫 發布:2024-11-20 02:06:45 瀏覽:103
強制刷機後為什麼下不了東西 發布:2024-11-20 02:02:46 瀏覽:143
為什麼吃完東西肚子疼怎麼緩解 發布:2024-11-20 01:35:43 瀏覽:641