标题:郁闷!我的程序计算结果怎么不对呀
只看楼主
飞龙2006
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-2-14
 问题点数:0 回复次数:2 
郁闷!我的程序计算结果怎么不对呀

#include<stdio.h>
#include<string.h>
void main()
{
int len,eax,edx=1;
int ebx,esi;
char name[50];
printf("please input your name:");
gets(name);
len=strlen(name);
ebx=0x49390305;
esi=0x48631220;
for(;len>=1;)
{
printf("1 %lx %lx\n",ebx,esi);//在此看ebx,esi都不是上面的数,哪出错了,是dos下不支持这么大的数吗?
ebx=name[edx]^ebx;
esi=esi^ebx;
printf("2 %lx %lx\n",ebx,esi);
getch();
{
if(ebx%2==0)
{ebx>>=1;
ebx=ebx^0x1200311;}
else ebx>>=1;}
edx=edx+1;
len=len-1;}
printf("you password: %.4x-%.4x-%.4x-%.4x\n",ebx,esi);
printf("you password: %lx %lx\n",ebx,esi);
printf("keyGen by roba enjoy Cracking\n");
getch();
}

在运行时

搜索更多相关主题的帖子: 结果 
2006-02-17 12:30
吸血鬼王
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2005-12-17
得分:0 
把变量类型改成unsigned long试一下
2006-02-17 12:37
飞龙2006
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2006-2-14
得分:0 

非常感谢!!!!!!

2006-02-17 12:42



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-45931-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.151173 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved