社区
汇编语言
帖子详情
一个非常简单的问题!
swaz23
2009-05-09 04:39:54
看自己动手写操作系统这本书书。
在软盘中读loader.bin的时候判断是否已经读完是这样写
cmp ax,0xFFF
jz ...
而前面又写道:FAT项的值代表的是文件下一个簇号,但如果值大于或者等于0xFF8,则表示当前簇已经是本文件的最后一个簇.
既然大于或者等于0xFF8就表示是最后一个簇,那么为什么只要cmp ax,0xFFF就可以了呢?
...全文
130
9
打赏
收藏
一个非常简单的问题!
看自己动手写操作系统这本书书。 在软盘中读loader.bin的时候判断是否已经读完是这样写 cmp ax,0xFFF jz ... 而前面又写道:FAT项的值代表的是文件下一个簇号,但如果值大于或者等于0xFF8,则表示当前簇已经是本文件的最后一个簇. 既然大于或者等于0xFF8就表示是最后一个簇,那么为什么只要cmp ax,0xFFF就可以了呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
swaz23
2009-05-20
打赏
举报
回复
哎,好复杂也
garymao8888
2009-05-15
打赏
举报
回复
学习之
goodider
2009-05-15
打赏
举报
回复
这是规定吧。
swaz23
2009-05-14
打赏
举报
回复
up up
swaz23
2009-05-12
打赏
举报
回复
我这里使用的是FAT12
文件最后一个簇是 0xFF8 - 0xFFF
为什么只要 cmp ax,0xFFF 呢
而不是cmp ax,0xFF8
或者cmp ax,0xFF9之类的。。
我还是不太明白,不好意思
goodider
2009-05-09
打赏
举报
回复
看最后那个表你就明白了。
goodider
2009-05-09
打赏
举报
回复
文件分配表
一个分区分成同等大小的簇,也就是连续空间的小块。簇的大小随着FAT文件系统的类型以及分区大小而不同,典型的簇大小介于2KB到32KB之间。每个文件根据它的大小可能占有一个或者多个簇;这样,一个文件就由这些这些(称为单链表)簇链所表示。然而,这些链并不一定一个接着一个在磁盘上存储,它们经常是在整个数据区域零散的储存。
文件分配表(FAT)是映射到分区每个簇的条目列表。每个条目记录下面五种信息中的一种。
链中下一个簇的地址
一个特殊的文件结束符(EOF)符号指示链的结束
一个特殊的符号标示坏簇
一个特殊的符号标示保留簇
0来表示空闲簇
每个版本的FAT文件系统使用不同大小的FAT条目。这个大小已经由名字表示出来,例如FAT16文件系统的每个条目使用16位表示,32位文件系统使用32位表示。这个不同意味着FAT32系统的文件分配表能比FAT16映射更多的簇,它也允许FAT32有更大的分区大小。这也使得FAT32比FAT16更能有效地利用磁盘空间,因为每个驱动器能够寻址更小的簇,这也就意味着更少的空间浪费。
FAT条目值:
FAT12 FAT16 FAT32 描述
0x000 0x0000 0x?0000000 空闲簇
0x001 0x0001 0x?0000001 保留簇
0x002 - 0xFEF 0x0002 - 0xFFEF 0x?0000002 - 0x?FFFFFEF 被占用的簇;指向下一个簇
0xFF0 - 0xFF6 0xFFF0 - 0xFFF6 0x?FFFFFF0 - 0x?FFFFFF6 保留值
0xFF7 0xFFF7 0x?FFFFFF7 坏簇
0xFF8 - 0xFFF 0xFFF8 - 0xFFFF 0x?FFFFFF8 - 0x?FFFFFFF 文件最后一个簇
注意FAT32只使用32位中的28位。高4位通常是0但它们是保留位,不要更改它们。在上面的表中它们用问号表示。
swaz23
2009-05-09
打赏
举报
回复
jz LOADED
LOADED:
;显示已经读完。
这里和jz没有关系的
goodider
2009-05-09
打赏
举报
回复
jz后面是什么?
非常简单
明了的404提示页面
本文介绍如何创建
一个
非常简单
明了的404错误提示页面,包括unauth.jsp的设置,引入style.css文件,以及404.png背景图片的使用。提供了包结构图和更简单的纯文字提示页面选项。
加了!important没用?失效了?记录
一个
一直被我忽视的关于!important提升权重的
问题
本文通过实例解析CSS中!important与继承样式的优先级
问题
,揭示!important的条件性权重提升及子元素选择器的作用。
一个
非常
非常简单
的UKF入门程序实例
本文介绍了无损卡尔曼滤波(UKF)的基本概念和工作原理,通过
一个
简单的非线性模型演示了UKF的应用。UKF利用UT变换处理非线性
问题
,避免了EKF的线性化步骤。文章提供了一段Python代码实现,并展示了实验结果。
1999:
非常简单
的
问题
博客围绕
一个
算法
问题
展开,三金为纪念助教结束和与萌新的友谊,提出根据给定1600年后的日期计算是周几的
问题
,给出了输入输出格式及样例,还包含解决该
问题
的代码。
非常简单
就能理解的 链表带环
问题
你也能轻松学会!
文章介绍了如何使用快慢指针判断链表是否存在环,并详细阐述了找到环入口的数学推论及代码实现。当链表带环时,快指针走两步,慢指针走一步,它们会相遇在环内特定位置;之后,从相遇点和头节点各放
一个
指针,它们会在环的入口相遇。文章还探讨了不同步速下指针是否会相遇的
问题
。
汇编语言
21,500
社区成员
41,617
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章