硬盘整数分区FAT32/NTFS正确方法
文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。
哎,我还是不得不把这个玩意放上来,总是上网查太累了,而且网上查的还净是FAT32格式的硬盘整数分区,遇到NTFS就不管用了,我无语。。。
关于这个分区,硬盘厂商设计的是1GB=1000Mb,而操作系统却认为1Gb=1024Mb,而这个整数分区的公式既不是按照硬盘厂商的设计也不是操作系统的设计,而是另有误差。原因就是硬盘在分区和格式化之后还会在硬盘上占用一定的空间用来存储磁盘结构和数据位置等信息。
对于FAT32格式:
应分配MB数=(分区GB数-1)×4+1024×分区GB数
也就是说,如果你要在FAT32格式的硬盘上分出一个10 GB的硬盘,那么:
你应该分配的MB数=(10-1)×4+1024×10=10276 MB
这样你就可以得到整数的10 GB分区了。
对于NTFS格式:
硬盘一般有255磁头,63扇区,故每柱面大小为:
512byte x 255 x 63=8225280bytes =7.84423828125 MB
如果要分10 GB,那么要10x1024 MB=10240 MB
需要柱面数为10240÷7.84423828125=1305.416744475568004979769685652
取整数既为1306个柱面
应分MB数为1306x7.84423828125=10244.5751953125 MB
不管小数点后面几位都进1,也就是10245 MB,系统也就认为是10.00 GB了。
总结:这么算实在是太麻烦了,要是每次这么算一下我会崩溃的。。。搬出VB写了个无聊的计算器(老不写了,全忘了)。。。再附张表,方便5的倍数查找,就不用开计算器了。
需要整数分区计算器的朋友请到下载基地下载Slyar_DiskInt.exe
附表在下面,打开全文查看。

好东西呀,谢谢了
@= = 硬盘厂商的进制是1000,不是1024...
很奇怪的,我的10G盘容量是10775162880 BYTES,除以1024的平方,等于10276.。。
NTFS的盘。。。为啥?
感谢提供,很方便呢。
这样很方便 连运行软件都省事啦^^
今天要分区 感谢分享~ ...
感谢提供 正要为系统区分个整数
fat32最大支持32G的,版主后面的对不?
现在正在在外面买电脑
很实用
数据盘,不分区最好。
系统盘才要分区。
如果在linux etx3 etx4 GB GiB 都搞晕人了!
@lyqzg 囧...我发这篇文章的时候还没用过那么大的硬盘...
100G分区太小,1T的硬盘分多少区啊,我还喜欢挂三四块,字母都不够用啊,弄个大点的,50或100递增就好
Twitter和小众软件观光团前来观光!!
@chenshaoju
不错啊.....很实用
@neo 呵呵,当然可以了,把作者那些注明就行了~
简直无与伦比了,喜欢这样追求完美。以前找了个软件,不区分fat32和ntfs的,弄得很恼火。
现在好了,有了这个方便多了。
请问,是否可以转载这篇博文。想让更多人知道啊。
呵呵 博主太认真了
学习了,网站不错。
很不错,我转载了。。。谢谢
好得很
完全正确,FAT32和NTFS两种不同的格式需要分别对待。
太完美了!网站也非常不错~~
你是张国荣再世-追求完美的人!连分个区都要凑整数,还介有惹事的专门做了个计算器!
不过,我喜欢!我也曾经花了半天的时间在虚拟机完整的算过。
可以看看我的计算和验证过程:
http://hi.baidu.com/kowloons/b.....b4a22.html
收藏了看看