新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > Delphi:高效的哈希函數

        Delphi:高效的哈希函數

        作者: 時間:2011-06-10 來源:網絡 收藏

        //begin
        // Result := (Result * 131) + PByte(buf)^;
        // Inc(PByte(buf));
        // Dec(count);
        //end;
        end;
        function DJBHash(buf: Pointer; count: Integer) : Cardinal; assembler;
        asm
        PUSHEDI
        PUSHEBX
        XOR EBX, EBX
        MOV ECX, EAX
        MOV EAX, 5381
        @LOOP:
        TESTEDX, EDX
        JZ @EXIT
        MOV EDI, EAX
        SHL EDI, 5
        ADD EAX, EDI
        MOV BL, [ECX]
        ADD EAX, EBX
        INC ECX
        DEC EDX
        JMP @LOOP
        @EXIT:
        POP EBX
        POP EDI
        //----------------------------
        // Pascal:
        //
        //Result := 5381;
        //while count > 0 do
        //begin
        // Result := ((Result shl 5) + Result) + PByte(buf)^;
        // Inc(PByte(buf));
        // Dec(count);
        //end;
        end;

        本文引用地址:http://www.104case.com/article/172681.htm

        上一頁 1 2 下一頁

        關鍵詞: 函數 哈希 高效 Delphi:

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 长沙县| 新密市| 钟山县| 卢湾区| 佛山市| 临夏县| 九江县| 宁强县| 临潭县| 隆德县| 辽中县| 杨浦区| 永新县| 杭州市| 梨树县| 灵丘县| 德令哈市| 米林县| 织金县| 凤台县| 温泉县| 清远市| 遵化市| 定安县| 介休市| 遂平县| 西城区| 贵定县| 泗洪县| 丹棱县| 育儿| 东丰县| 衢州市| 商水县| 丹凤县| 莎车县| 中西区| 肥西县| 依安县| 龙海市| 肇源县|