01
02
03
第一步:为什么要备份?
前面已经查到了目标文件的起始地址了,真正有用的信息只有32字节(根目录区每一项32字节),如果把根目录区全部加载到内存,就存在资源浪费,为了更有效的利用内存,只拷贝需要用到的32字节这个目标项。
拷贝完成后,就知道了目标文件的信息,知道目标文件从哪里开始存储的,就可以通过Fat表具体加载目标文件的内容了;
第二步:调用 ReadSector 函数加载Fat表到内存,查找Fat表中的每个表项,挨个把目前文件存储到扇区中的所有内容加载到内存;
04
05
如果源内存和目标内存有重叠,需要考虑拷贝方向的问题;
06
07
08
fat表示物理结构
fat表项表示逻辑结构
09
10
偶数走第一个处理关系式
奇数走第二个处理关系式
11
格式:DIV Reg/Mem
功能:
除数位数 隐含的被除数 商 余数 举例
8位 AX AL AH DIV BH
16位 DX-AX AX DX DIV BX
32位 EDX-EAX EAX EDX DIV ECX
MUL
(无符号数的乘法) 有两种乘法:
第一种只有一个操作数,另一个操作数是EAX,结果存放到EDX:EAX中,比如:MUL ECX
第二种有两个操作数,两个操作数相乘,结果存放于EDX:EAX中,比如:MUL DWORD PTR DS:[405000]
12
13
14
本文介绍了在IT技术中,如何通过有效备份(仅复制根目录区)来节省内存资源,包括使用ReadSector加载Fat表,处理内存重叠问题,以及利用DIVReg/Mem和MUL指令进行内存操作的过程。














627

被折叠的 条评论
为什么被折叠?



