1樓:無核橄欖
在這裡r表示基數,如果r由2變為16,那麼尾數M的範圍就變大了,自然表示的數的個數也越多,而階碼不受基數的變化影響,所以長度相同時基數越大所能表示數的個數越多。
剛學到這裡,不知道理解有沒有問題。
2樓:苗苗
這句話在【規格化】的前提下才成立。我們來複習下這個概念:
基數為2時,尾數最高位為1的數為規格化數;
基數為4時,尾數最高兩位不全為零的數為規格化數;
基數為8時,尾數最高三位不全為零的數為規格化數。
好了,這裡我們假設尾數為10位,階碼為4位。
假設為正數。即數符為0。
規格化浮點數所表示的數的個數取決於尾數的排列組合數。
對於基數為2的規格化浮點數,尾數可表示為:
0.1 由於最高位固定為1,排列組合數為2^9,即只能表示2^9個尾數;
對於基數為4的規格化浮點數,尾數可表示為:
0.01
0.10
0.11
排列組合數為2^8+2^8+2^8=2^9+2^8,比基數為2的規格化浮點數多表示2^8個尾數;
對於基數為8的規格化浮點數,尾數可表示為:
0.001
0.010
0.011
0.100
0.101
0.110
0.111
排列組合數為7x2^7=2^9+2^8+2^7比基數為2的規格化浮點數多表示2^8+2^7個數,比基數為4的規格化浮點數多表示2^7個數。
為什麼叫浮點數
道不輕傳 定點數能表示的數字有限,因為小數點固定,整數字和小數字就固定,就不利於表達特別大或特別小的數,浮點數就可以表示很大或很小的數字,因為小數點不固定,比如 123.45 用十進位制科學計數法可以表達為 1.2345 10 其中 1.2345 為尾數,10 為基數,2 為指數。浮點數利用指數達到...
Python中為什麼將浮點數賦值給變數,似乎可以直接使用 號進行比較?
邱昊宇 這玩意兒換成 C 也沒啥兩樣呀 include define print v printf s n v True False intmain 編譯執行以後的輸出一模一樣。自己把這些數換成二進位制然後保留 53 位有效數字算一算就知道了。那幾個可以用 判斷的,是因為左右兩邊真的相等。但是這種相...
為什麼兩種浮點數型別的包裝類 Float,Double 並沒有實現常量池技術?
dwing 各種整數型別有常量池是因為valueOf根據引數定位常量池開銷很低.而浮點數就不一樣了,判斷乙個浮點數是否整數並轉換成整數相對來說並不快,所以valueOf索引到常量池有些開銷.當然如果自己有這方面需求完全可以自己建立Float,Double常量池,而且可以根據特定需求建立合適大小的池及...