㈠浮點數儲存
浮點數在計算機中儲存也是以二進位制的形式,遵循ieee二進位制算數標準;格式為:
float : 符號位(首位)、指數字(8位)、尾數(23位)
double:符號位(首位)、指數字(11位)、尾數(52位)
㈡十進位制浮點數轉換為二進位制
★方法:
⑴整數部分:除以2,取出餘數,商繼續除以2,直到得到0為止,將取出的餘數逆序
⑵小數部分:乘以2,然後取出整數部分,將剩下的小數部分繼續乘以2,然後再取整數部分,一直取到小數部分為零為止。
如果永遠不為零,則按要求保留足夠位數的小數,最後一位做0舍1入。將取出的整數順序排列。
★示例:22.8125
⑴整數部分:除以2,商繼續除以2,得到0為止,將餘數逆序排列。
22 / 2 商11 餘 0
11 / 2 商5 餘 1
5 / 2 商2 餘 1
2 / 2 商1 餘 0
1 /2 商0 餘 1
得到22的二進位制是 : 10110
⑵小數部分:乘以2,取整,小數部分繼續乘以2,取整,得到小數部分0為止,將整數順序排列。
0.8125x2=1.625 取整1 小數部分是0.625
0.625x2=1.25 取整1 小數部分是0.25
0.25x2=0.5 取整0 小數部分是0.5
0.5x2=1.0 取整1 小數部分是0
得到0.8125的二進位制是 : 0.1101
⑶結果:十進位制:22.8125 等於二進位制: 10110.1101
十進位制 轉換為 二進位制
聽說優酷前端面試有問進製數轉換的,甚至是負正整數轉換為二進位制,那就索性一次整個明白 正整數轉二進位制 負整數轉二進位制 小數轉二進位制 1 正整數轉成二進位制。口訣 除二取餘,倒序排列,高位補零。42 除以2得到的餘數 右邊 為010101,然後倒著排一下就是取到的二進位制了 如下圖 計算機內部表...
十進位制浮點數的二進位制轉換及儲存
網上看到一道小題 int main void 輸出結果a,b均為0。這道小題是乙個很好的面試題,考查面試者對浮點數儲存的理解。十進位制小數的二進位制表示 整數部分 除以2,取出餘數,商繼續除以2,直到得到0為止,將取出的餘數逆序 小數部分 乘以2,然後取出整數部分,將剩下的小數部分繼續乘以2,然後再...
(string)十進位制 轉換為 二進位制
將乙個長度最多為30位數字的十進位製非負整數轉換為二進位制數輸出。輸入描述 多組資料,每行為乙個長度不超過30位的十進位製非負整數。注意是10進製數字的個數可能有30個,而非30bits的整數 輸出描述 每行輸出對應的二進位制數。輸入 013 8輸出 0111 1000 下面是王道上的解法,模擬的是...