程序读取一个未经对齐的数据时引发的异常怎么办

程序读取一个未经对齐的数据时引发的异常怎么办,第1张

1、随着硬盘容量不断扩展,为了提高容错能力和读写速度,将原来规定的每个扇区512字节改为每个扇区4096 个字节,也就是现在常说的“4K扇区”。所谓“4K对齐”就是符合“4K扇区”定义格式化过的硬盘,并且按照每扇区4K 的规则写入数据。2、如果4k不对齐,例如在NTFS6.x 以前的规范中,数据的写入点正好会介于在两个4K 扇区的之间,也就是说即使是写入最小量的数据,也会使用到两个4K扇区,这样造成跨区读写,读写次数放大大,从而影响读写速度。3、对于固态硬盘,由于写入次数有限,如果4K不对齐,不但性能下降,而且寿命也会缩短。所有采用Advanced Format的硬盘也需要对齐,不然影响性能。4、现在的大容量机械硬盘,多数支持高级格式化,也就是采用4k格式化。使用Win7的安装程序分区,使用Win7的磁盘管理,使用Win7的diskpart命令行工具,所分得区都是对齐的;使用DiskGenius可以手动指定起始扇区位置,就是可对齐,可不对齐,注意分区时选择“对齐到下列扇区的整数倍”扇区数选择8或者以上,建议选择2048,这是Win7分区使用的值,实际对齐大小就为1024K。

我遇到过,我觉得可能是keil的程序以及字符编码之类的问题

以下是baidu搜来的

来自http://blog.sina.com.cn/s/blog_3f808fe401008yqh.html

Keil uVision3与uV2相比增加了对更多型号单片机的支持,另外还对一些的方面进行了优化。不过它却优化出一个让人头疼的问题,那就是光标位置显示不正确!这一问题给程序的编写带来了许多不便.不过不用担心,这是有解决办法的。

方法是:进入uV3,点【Edit】→【Configuration】→[Colors&Fonts],在[Window]框中有对Asm文件编辑状态和C文件编辑状态等字体与颜色的设置。选中[8051:Editor Asm Files],然后再点击[Font]后面的按钮,打开字体选择对话框。选择字体:Fixedsys,字号设置为10(一定要是10)。这样Asm文件编辑状态就设置好了。同样,再选择[8051:Editor C Files],把字体同样设置为Fixedsys和10好字体。点击确定。设置完成!

还有个方法:

来自http://www.51c51.com/BBS/dispbbs.asp?boardid=15&ID=28108

很容易,只要修改一下keil安装目录下的tools.ini文件就行

用记事本打开tools.ini后在第三行后增加一行:ANSI=1

如:原内容是

[UV2]

ORGANIZATION="China"

NAME="User", "HeartFly"

EMAIL="dong-heart@163.com"

BOOK0=UV3\RELEASE_NOTES.HTM("uVision Release Notes",GEN)

[C51]

修改后为

[UV2]

ORGANIZATION="China"

NAME="User", "HeartFly"

ANSI=1

EMAIL="dong-heart@163.com"

BOOK0=UV3\RELEASE_NOTES.HTM("uVision Release Notes",GEN)

[C51]

OK,解决~


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11809127.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存