分区分成整数,其实这是一个很无聊的问题。很多时候大家分区完成以后 总是显示X.99G,这样对于有洁癖的人或者是完美主义者来说是很不爽的。通常的的算法说是 M=(G-1)*4+1024*G得到填写多少M。实际上这个算法并不准确。下面是使用这种算法分区以后NTFS格式的显示。

今日一个朋友告诉我一个比较准确的算法:
于是我马上拿新硬盘进行测试,是不是很整齐呢。

听说一位仁兄为了验证上面的算法的准确性格式坏硬盘一个。大家也可以试试。
硬盘一般有255磁头,63扇区,故每柱面大小为:
512byte x 255 x 63=8225280bytes =7.84423828125 M
如果要分4G,那么要4x1024M=4096M
需要柱面数为4096÷7.84423828125=522.166
取整数既为523个柱面
应分M数为523x7.84423828125=4102.53662109375M
不管小数点后面几位都进1,也就是4103M,windows就认为是4.00G了。
这个方法NTFS和FAT32通用。
<input id=a SIZE=2>G <input type=button value=计算 onclick='r.innerHTML+="<br>"+a.value+"G : "+Math.ceil(Math.ceil(a.value*1024/7.84423828125)*7.84423828125)+"M"'>
<div id="r"></div>