能力值:
( LV9,RANK:180 )
|
-
-
2 楼
y= (x>>8) ^ LoWord(x)
HiByte= y div FF
LoByte= y mod FF
以这例子 0006457B :
000645^457B= 433E
433E div FF = 43
433E mod FF = 81
所以得 4381
最后2行只是乘以 0Dh
4381*0D=36D8D
--------------
若你 shr eax,8 改成 shl
则只是 y mod FF , 再乘0Dh
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
问下sessiondiy大哥
HiByte= y div FF
LoByte= y mod FF
一句句看能看懂 但这个两个不明白怎么来的
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这4句
mov edx,0x80808081
mov eax,ecx
mul edx
shr edx,7
相当于 y/FF (y*0x80808081/2^39≈y/255)
mov eax,edx
shr eax,8
sub eax,edx
sub ecx,eax
为y/FF+y
最后两句 即乘以0Dh(15)
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
你太强了,我今天才发现后面输错了,果然是shl
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
请教一下sessiondiy大哥:
一般什么情况下会mod ff 呢,我最近分析代码时老是遇到
|
能力值:
( LV9,RANK:180 )
|
-
-
7 楼
这问题你以前问过了.
我不知道.
(shl 是比较合理. 不想发帖问,我就直接写了.)
(这个跟你之前问的那个其实是一样的算法)
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
Thanks
看来汇编功底不行 看的好费劲
记得哪个帖子某人说sessiondiy看汇编跟看报纸一样 然后s回帖 我不看报纸
|
|
|