`

将字符串的转换为hash码

    博客分类:
  • VC++
 
阅读更多

#include "stdio.h"

void main()
{
 char* des=new char[100];
 printf("请输入函数名:\n");
 scanf("%s",des);
 printf("您要查找的函数为:%s\n",des);
 unsigned int ans=0;
_asm
{
 push des
 call gethash
 add esp,4
 mov ans,eax
 jmp mexit
gethash:
   push ebp
   mov ebp,esp
   push ebx
   push edx
   push ecx
   push edi
   mov ebx,[ebp+8]
   mov esi,ebx
   xor ebx,ebx
   xor edx,edx
   xor edi,edi
   xor eax,eax
b:   cmp dl,byte ptr [esi]
   jz a
   mov ecx,ebx
   shl ebx,25
   shr ecx,7
   or ebx,ecx
   mov al,byte ptr [esi]
   add ebx,eax
   inc esi
   jmp b
a:   
   mov eax,ebx
   pop edi
   pop ecx
   pop edx
   pop ebx
   mov esp,ebp
   pop ebp
   ret
mexit:

}
printf("ans=%8x\n",ans);
getchar();
getchar();
return;

}

分享到:
评论

相关推荐

    获取一个字符串的散列hash

    在给定的标题和描述中,“获取一个字符串的散列hash”指的是利用特定算法将一个字符串转换为其对应的散列值。这个过程对于JavaScript开发者来说尤其有用,因为可以用于创建唯一标识符、验证数据完整性或加密敏感信息...

    数据结构(字符串匹配,hash,二叉树)训练

    哈希函数将字符串转化为固定大小的数值,使得比较变得快速。在这个实验中,你需要设计一个哈希函数,确保不同的字符串能生成不同的哈希值,同时减少哈希冲突。算法的伪代码展示了如何使用哈希值进行匹配:首先计算...

    自己实现的字符串hash类

    1. **哈希函数**:这是核心部分,它将输入的字符串转换为一个整数值,这个值应该均匀分布在整个哈希表的范围内,以减少哈希冲突的可能性。常见的哈希函数有DJB2、CRC32、FNV1a等。设计一个好的哈希函数对于哈希表的...

    字符串哈希成数字的C实现的代码(含测试)

    将字符串哈希成数字的几种经典的方法:其中的一部分 #ifndef INCLUDE_GENERALHASHFUNCTION_C_H #define INCLUDE_GENERALHASHFUNCTION_C_H #include typedef unsigned int (*hash_function)(char*, unsigned int...

    node-shorthash, 获取字符串的唯一简短哈希.zip

    node-shorthash, 获取字符串的唯一简短哈希 shorthash从长字符串( utf8格式) 生成短。alpha数。undecryptable和惟一散列id的小型 ...如果要将字符串加密,如电影名称或者者人名。唯一和url友好的,请使用 shorthash 。

    C#实现字符串SHA-256加密算法

    这段代码首先将输入的字符串转换为字节数组,然后创建一个SHA256实例,通过调用ComputeHash方法计算摘要。计算出的摘要是一个字节数组,为了方便展示和比较,通常会将每个字节转换为其16进制表示并连接成字符串。 ...

    字符串hash的研究

    哈希函数可以用于字符串,将字符串转化为一个整数值,这个值通常代表了字符串的某种特性或特征。这样的哈希值可以用来快速比较两个字符串是否相等,或者在哈希表中高效地查找字符串。 字符串的哈希算法多种多样,...

    字符串的哈希Key算法

    它通过将字符串转化为固定长度的数值,即哈希值,使得在大量数据中查找特定字符串变得高效。这种算法广泛应用于数据库索引、缓存系统、编程语言的设计(如Python、Java中的哈希表)以及内存监控类的实现。 哈希算法...

    .NET中获取字符串的MD5码

    1. **使用`System.Web.Security`命名空间**:该命名空间提供了现成的函数`FormsAuthentication.HashPasswordForStoringInConfigFile`,可以方便地将字符串转化为MD5格式。 ```csharp using System.Web.Security; ...

    C语言中压缩字符串的简单算法小结

    在C语言中,字符串压缩是一种将字符串转换为更紧凑形式的技术,常用于节省存储空间或提高数据处理效率。本文将重点介绍三种简单的字符串压缩算法,包括哈夫曼编码,以及它们在不同场景中的应用。 首先,最基础的...

    各种字符串Hash函数比较[借鉴].pdf

    它将字符串转换为一个固定长度的数值(通常称为哈希值),这个数值可以作为字符串的唯一标识。在对比不同字符串Hash函数时,主要关注以下几个方面: 1. **均匀性**:一个好的Hash函数应该能够将输入字符串均匀地...

    字符串的加密解密操作实现

    - **加密过程**:选择合适的加密算法,将明文字符串转换成密文。例如,使用AES加密时,需要先对字符串进行填充以达到指定的块大小,然后通过加密算法和密钥进行处理。 - **解密过程**:使用对应的解密算法和密钥,...

    jQuery 实现字符串加密处理

    MD5(Message-Digest Algorithm 5)和SHA1(Secure Hash Algorithm 1)都是常见的哈希函数,它们可以将任意长度的数据转化为固定长度的摘要,具有不可逆性,常用于验证数据完整性或密码存储。 1. **MD5加密**:MD5...

    MD5 Hash 字符串加密小工具

    这个"MD5 Hash 字符串加密小工具"是针对字符串进行MD5加密处理的一个便捷工具,主要应用于数据校验、密码存储等方面。 在IT行业中,MD5加密通常用于以下几个场景: 1. **数据完整性检查**:当下载文件后,可以通过...

    字符串处理算法

    本文将介绍一些常见的字符串处理算法:Hash、KMP、字典树(Trie)、AC自动机以及后缀数组,并提供一些经典例题来阐述这些算法的应用。 首先,我们来谈谈Hash算法。Hash算法的核心思想是将对象转换为一个关键值,...

    字符串hash以及大问题PPT学习教案.pptx

    字符串哈希(Hash)是一种将任意长度的字符串转换为固定长度整数的算法,它在计算机科学中的应用广泛,特别是在数据结构和算法中。哈希函数是这种转换的核心,其目的是将字符串映射到一个整数空间,以便于快速查找和...

    字符串统计函数,统计不同字符个数和每个字符出现的次数

    本篇将详细探讨如何实现一个统计字符串中不同字符个数以及每个字符出现次数的函数,我们将以C++语言为例进行讲解。 首先,我们需要了解基本的字符串处理函数和数据结构。在C++中,`std::string` 是用来表示字符串的...

    C# 将字母数字字符串转换为MD5值计算工具

    2. **字节流转换**:MD5算法需要处理的是字节流,因此,需要将输入的字母数字字符串转换为字节数组。这可以通过Encoding类实现,例如ASCII或UTF8编码: ```csharp string input = "your_string"; byte[] bytes = ...

    比较字符串是否相同.rar

    对于大量字符串比较,可以使用哈希函数(如Python的`hash()`)预计算字符串的哈希值,然后比较哈希值来快速判断是否相同。但这种方法仅适用于不允许哈希冲突的情况。 6. **字符串比较的库函数** 许多编程语言提供...

    [其他类别]SHAI、MD5加密、解密、HTML字符串转换实例_strmanage_aspx1(ASP.NET源码).rar

    首先,SHA1(Secure Hash Algorithm 1)是一种广泛使用的散列函数,它能将任意长度的信息转化为固定长度的摘要信息。在ASP.NET中,可以使用System.Security.Cryptography命名空间下的SHA1类来实现SHA1加密。通过创建...

Global site tag (gtag.js) - Google Analytics