本帖最后由 hanyeguxing 于 2011-5-9 09:09 编辑
如果验证,可以直接:- @echo off
- :a
- if %random%==0 set a=1
- if %random%==32767 set b=1
- if "%a%%b%"=="11" (echo;完成&pause) else goto:a
复制代码 rand()生成 0 ~ RAND_MAX 之间的一个伪随机数,与种子 srand() 、时间 time() 通过线性同余算法获取变量 %random% 的范围为 0 ~ 32767
cmd.exe:
msvcrt.rand, Ord:02EDh
:4AD12E3B FF156412D04A Call dword ptr [4AD01264]
:4AD12E41 50 push eax
:4AD12E42 E9207AFFFF jmp 4AD0A867
msvcrt.time, Ord:0317h
:4AD04BEE FF153C12D04A Call dword ptr [4AD0123C]
:4AD04BF4 50 push eax
msvcrt.srand, Ord:02FBh
:4AD04BF5 FF154012D04A Call dword ptr [4AD01240]
:4AD04BFB 59 pop ecx
:4AD04BFC 59 pop ecx
:4AD04BFD 5F pop edi
:4AD04BFE 5E pop esi
:4AD04BFF 5B pop ebx
:4AD04C00 C9 leave
:4AD04C01 C20400 ret 0004
:4AD04C04 41 inc ecx
:4AD04C05 007500 add byte ptr [ebp+00], dh
:4AD04C08 7400 je 4AD04C0A |