-
1 # 電子維修
-
2 # 通訊一小兵
應邀回答問題。
硬碟1G=1024M 1T=1024G其實這個並不是通用的計算方式,而是計算機業二進位制下只能如此計算,或者說是Windows系統裡就是這麼計算的。
在Windows系統裡的定義:1KB=1KiBiBytes=1024Bytes KiBibytes的英文全稱是Kilo Binary bytes的縮寫,中文全稱是千二進位制位元組。
1MB=1MeBiBytes=1024*1024Bytes=1048576Bytes MeBi是Mega Binary的縮寫,中文全稱是兆二進位制位元組。
1GB=1GiBiBytes=1024*1024*1024Bytes=1073741824Bytes,GiBi是Giga Binary的縮寫,中文全稱是吉二進位制位元組。
這個是微軟的Windows就是這麼定義的。
比較有意思的是Linux系統和硬碟廠家的定義是另外的單位。如果你使用過Liunx系統,你就會知道在Linux系統裡,1G=1000M,1M=1000K,Linux的定義是和硬碟廠家的定義是一樣的,這個比較有意思。
這是因為你看上去G也G,M也是M,但是實際上它們微軟說的G和M根本不是一回事兒。
在硬碟廠家和Linux系統/Macos的定義中:
1K=1KiloBytes KiloBytes就是千位元組,1Kilobytes=1000bytes
1M=1MegaBytes=1000*1000=1000000Bytes
1G=1GigaBytes=1000*1000*1000=1000000000Bytes
也就是說,在單位換算裡,硬碟廠家和Linux/Macos的系統進位是十進位制的。
誰對誰錯呢?嚴格意義上來說是微軟錯了。KiloBytes,可以簡寫為kB,KB或者K,按照SI(國際計量標準)中已經明確的規定了
1KB=1000Bytes 1MB=1000KB 1GB=1000MB。
而IMC(國際電工委員會)標準裡1KiB=1024B 1MiB=1024KiB 1GiB=1024MiB
不過,依然有大量的公司和個人會把KB和KiB搞混,MB和MiB搞混.....
現在Linux和MacOS已經按照國際標準要求將1KB定義為1000B,1MB定義為1000KB,1GB定義為1000MB。
而微軟依然錯誤的在Windows裡定義1KB=1024B。
嚴格的按照國標標準來說,微軟的定義是完全錯誤的。
有意思的事情就是微軟的體量太大了,導致現在KB和KiB,MB和MiB的混淆已經普遍化,所以現在KB在很多時候也是在指KiB,MB在很多時候也是在指MiB......
回覆列表
站在計算機角度來看硬碟容量
硬碟容量1G為什麼不等於1000M,事實上這是站在計算機作業系統的角度來看的,因為在計算機的世界裡只認識二進位制數,以2的次方處理資料更為整齊劃一,2的10次方就是1024,所以按照1024作為容量單位進位制,1GB就等於1024MB,1TB就等於1024GB。
站在硬碟廠商的角度來看硬碟容量然而站在硬碟廠商的角度來看,1GB容量就等於1000MB,1TB等於1000GB,這是廠商按照1000為單位進位制計算的容量,這樣就符合一些強迫症的觀點了,很顯然廠商在對硬碟標註時也是按照這個方式計算的,所以我們買到的硬碟在計算機中顯示的容量要比標註容量少,這並非是廠家的偷工減料,而是單位的換算方式不一樣罷了。
硬碟廠商為什麼不按照1024為進位制計算?這是在硬碟初期的歷史遺留問題了,最開始純粹是為了計算方便,而且容量較小,兩種計算方式的差別並不大,然而隨著計算機技術的發展,硬碟容量越來越大,兩種計算方式所造成的誤差也越來越大,如今標註為1TB的硬碟在計算機中只顯示930G左右,差了70G的容量,這也讓很多人覺得廠家是在偷工減料,實際這只是行業內的習慣罷了,再說按照1024也確實不容易計算。