首页
社区
课程
招聘
[旧帖] [求助]关于文件对齐一段函数的疑问 0.00雪花
发表于: 2008-2-25 08:17 3126

[旧帖] [求助]关于文件对齐一段函数的疑问 0.00雪花

2008-2-25 08:17
3126
就这个帖子http://bbs.pediy.com/showthread.php?t=52777&tcatid=43
函数是这样的

;----------------------------------------------
; input:
; EAX = Value need align     这个值是用来做什么的?文件(代码)长度?
; ECX = FileAlign                  这个值是表明按多少字节对齐么?
;
; output:
; EAX = Value aligned
;
; used reg
; EAX,ECX,EDX
;----------------------------------------------
Align proc
    push edx
    xor edx,edx
    push eax
    div ecx           如果上面参数我理解正确,那么这里一相除,代码多出的一部分放在EDX中
    pop eax
    sub ecx,edx    看看还差多少没有填满?
    add eax,ecx    填满EAX,正好对齐没有多出来
    pop edx
    ret
Align endp

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
2
可以这么说,如,假如eax的值是7,而exe是以4字节对齐的,则ecx = 4,那么计算结果就如下:
eax / ecx = 7 / 4 = 1 余 3
ecx - edx = 4 - 3 = 1
eax + ecx = 7 + 1 = 8 则,eax的对齐值是8
2008-2-25 09:04
0
雪    币: 380
活跃值: (101)
能力值: ( LV13,RANK:370 )
在线值:
发帖
回帖
粉丝
3
磁盘上的区块大小要按照PE结构的FileAlignment进行对齐
Value need align是要进行对齐的值
FileAlign就是PE结构的FileAlignment
2008-2-25 09:13
0
游客
登录 | 注册 方可回帖
返回
//