- UID
 - 7230
 
 注册时间2006-1-19
阅读权限20
最后登录1970-1-1
以武会友 
   
 
 
 
TA的每日心情  | 怒 2022-1-22 22:38 | 
|---|
 
  签到天数: 16 天 [LV.4]偶尔看看III  
 | 
 
:004BDB6F 83F808              cmp eax, 00000008 =========比较卡号是否为8位 
:004BDB72 757F                jne 004BDBF3 
:004BDB74 8B45FC              mov eax, dword ptr [ebp-04]=========伪码送到eax 
:004BDB77 8A00                mov al, byte ptr [eax]=========第一位送到al 
:004BDB79 8B55FC              mov edx, dword ptr [ebp-04]=========伪码送到edx 
:004BDB7C 3A4202              cmp al, byte ptr [edx+02]========伪码第三位与al(即第一位)比较 
:004BDB7F 7550                jne 004BDBD1 =========是否相等? 
:004BDB81 8B45FC              mov eax, dword ptr [ebp-04]=========伪码送到eax 
:004BDB84 80780138            cmp byte ptr [eax+01], 38=========第二位是否为38(即十进制8) 
:004BDB88 7547                jne 004BDBD1=========不等则game over! 
 
 
 
飘云老师,许多网友都说,不学算法,永远都是菜鸟,但是我不知道:比如说上面代码第一行,你怎么就知道:比较卡号是否为8 
 
 
还有第三行mov eax, dword ptr [ebp-04]=========伪码送到eax,为什么就是伪码送到eax,是用od调试知道呢,还是根据汇编知道的呢? 
 
 
希望飘云老师指点一二! 
 
 
还有你做的算法分析的视频教程,在用od分析是添加注释时,总是有送假码,或与真码比较等等的注释,你是怎么知道程序的代码就是这些作用呢? |   
 
 
 
 |