真正精确的硬盘分区取整数值的方法
简单地说,要想在 Windows 中让硬盘的分区容量显示整数的GB值
,可以在借助Excel软件,在A1栏输入要划分的整数值,在B1栏输入以下函数表达式:
=ROUNDUP(ROUNDUP(A1*1024/7.84423828125,0)*7.84423828125,0)
这样就可以自动计算你在分区时需要填入的MB数值。
这是我个人原创的成果,拿出来和大家分享。网上流传的其他的计算公式和早期的计算软件都是错误的。
分区软件是以MB为计算单位,但 Windows 是以GB为单位来管理硬盘的。但硬盘厂商和操作系统对硬盘容量的计算方式不一样,这样,分区很难取到整数.
网上现在流行的计算公式(分区填写MB=(整数GB-1)×4+1024×整数GB),其实是错误的,小容量精确,大容量不精确。
下面是根据上面的公式,在Excel中计算的一组数据,可供大家直接参考。
显示 分区填写 显示 分区填写 显示 分区填写 显示 分区填写
1G 1028M 15G 15367M 65G 66567M 130G 133125M
2G 2056M 20G 20482M 70G 71681M 140G 143362M
3G 3075M 25G 25604M 75G 76803M 150G 153606M
4G 4103M 30G 30726M 80G 81926M 160G 163843M
5G 5123M 35G 35841M 85G 87048M 170G 174088M
6G 6150M 40G 40963M 90G 92162M 180G 184324M
7G 7170M 45G 46085M 95G 97285M 190G 194561M
8G 8198M 50G 51208M 100G 102407M 200G 204806M
9G 9217M 55G 56322M 110G 112644M 250G 256005M
10G 10245M 60G 61444M 120G 122888M 300G 307204M
那么上面这个计算公式的原理是什么呢?其实我也是根据网上一位高人的一段文字推导出来的,那段文字内容如下:
硬盘一般有255磁头,63扇区,故每柱面大小为:
512byte×255×63 ﹦8225280bytes ﹦7.84423828125MB
如果要划分40GB,那么要
40×1024MB ﹦40960MB
需要柱面数为:
40960÷7.84423828125=5221.66
取整数为5222个柱面。
应分MB为5222×7.84423828125 ﹦40962.6123046875MB
取整数为40963MB。这样Windows就显示为 40.00 GB 了。
注意:这里两处取整数时,不管小数点后面几位都进1。这个方法在 NTFS 和 FAT32 文件系统中通用。
熟悉 Excel 的朋友都明白,上面这段文字可以用这个函数表达式表示:
B1=ROUNDUP(ROUNDUP(A1*1024/7.84423828125,0)*7.84423828125,0)
这就是本文开头的那个公式。我原本没有想弄一个公式出来,但刚买了一块1000GB的硬盘,想划分300GB的分区,网上没有供参考的数值,只好自己来琢磨了,于是琢磨出了上面这个公式。
但这也不是尽善尽美的,毕竟硬盘厂商和操作系统的计算方法不一样,而且操作系统中显示的是保留小数点后两位数的效果。根据我个人的经验,凡是15GB的倍数,都不能完全精确。例如30GB,你只能划分出29.99GB或30.01GB(30726M)。
--- Signature ---
带着两腿泥进城的孩子。