亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1961 | 回復(fù): 2
打印 上一主題 下一主題

從AID規(guī)律引出一種不錯(cuò)的數(shù)字進(jìn)制思路 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2006-12-15 21:28 |只看該作者 |倒序?yàn)g覽
好久沒有來CU了,大約是從BLOG興起罷?偸墙邮懿涣诉^于新鮮的東西,呵呵,或者真的老了。
看到現(xiàn)在論壇再次熱鬧起來,回來繼續(xù)潛水,并帶點(diǎn)小禮物給大家。
或者有曾經(jīng)研究過Alexa的朋友,本人曾應(yīng)邀研究AID的規(guī)律,想來已經(jīng)是4年前的事情了。
現(xiàn)將AID的規(guī)律跟CU的XDJM們介紹一下,關(guān)鍵是引出一種不錯(cuò)的數(shù)字進(jìn)制思路:64進(jìn)制計(jì)數(shù)

AID共計(jì)14位

計(jì)位:012345                67        89        ab                cd
采樣:l58f31                iL        QO        a1                RB

[1]0-5位為64位時(shí)間戳記
[0]6-7位為 IP_CLASS_B 64位值演變
[1]8-9位為 IP_CLASS_C 64位值演變
[1]a-b位為 IP_CLASS_D 64位值


用6位數(shù)就可以表示時(shí)間戳記,無論是對(duì)檢索還是記錄,都是一個(gè)好消息,但Alexa是怎樣做到的呢?那就是64位計(jì)數(shù)法。
以下是PHP寫的十進(jìn)制轉(zhuǎn)64進(jìn)制的FUNC:
function make_bit64($bit10) {
        //將十進(jìn)制的數(shù)值轉(zhuǎn)換為64進(jìn)制的數(shù)值
        $bit64=array("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","+","/");

        for($i=0;$bit10/pow(64,$i)>=1;$i++) {
                $str.=$bit64[$bit10%pow(64,($i+1))/pow(64,$i)];
        }

        $bit64d=substr($str,0,($i-1)).$bit64[$bit10/pow(64,($i-1))];

        return $bit64d;
}

為什么是64而不是50或者別的,當(dāng)然是因?yàn)榭梢酝ㄟ^位運(yùn)算直接通過2進(jìn)制轉(zhuǎn)換,甚至在代碼中省去了十進(jìn)制這一中間態(tài)。

正在思考這一思路在優(yōu)化代碼效率方面有沒有價(jià)值,歡迎大家拍磚。
satand@126.com

[ 本帖最后由 SATAND 于 2006-12-15 21:31 編輯 ]

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2006-12-18 13:55 |只看該作者
比較感興趣的部分是,映射表是怎么得出來的,因?yàn)椋?br /> 看到64自然想到base64,但base64的映射表是:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

[ 本帖最后由 crazysoul 于 2006-12-18 14:21 編輯 ]

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2007-01-29 10:28 |只看該作者
數(shù)字+大、小寫字母,是首要的選擇,至于余下的2位為什么是“+/”,為什么會(huì)是這種排序,我使用它們是因?yàn)閍lexa采納了這種排序,而alexa采納它們是因?yàn)樘亓ⅹ?dú)行,或者說本不想讓大家了解其中的規(guī)律。
說到“+”&“/”,當(dāng)然,在C語言里“|”不失為一個(gè)好的標(biāo)記,甚至比“/”還要好用,但我們?cè)趺从欣碛晌鋽嗟卣J(rèn)為alexa就是選擇了C語言呢,況且,BASE64給我們提供了好的規(guī)范。
呵呵,恰當(dāng)?shù)沫h(huán)境中,它們恰恰被選中了,沒有必要深究。

[ 本帖最后由 SATAND 于 2007-1-29 10:50 編輯 ]
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP