摘要:前言對(duì)于程序員的世界,一切東西皆二進(jìn)制。地址的計(jì)算根據(jù)常識(shí),的每一位的區(qū)域只有在區(qū)間。根據(jù)它的二進(jìn)制就明了。查詢的話,數(shù)字效率是高于字符串的。
前言
??對(duì)于程序員的世界,一切東西皆二進(jìn)制。
PHP整型長(zhǎng)度與二進(jìn)制原理??我們一直說的整型有32位,很多人都說整型數(shù)最大值有2^32 -1,其實(shí)這個(gè)相對(duì)于無符號(hào)整型數(shù),那么這里來談?wù)撓掠蟹?hào)整型數(shù)。一個(gè)整型占四個(gè)字節(jié),每個(gè)字節(jié)有8bit,假設(shè)一個(gè)整數(shù)3 可以表達(dá)為:
在這里為了方便觀察,八位隔開,真正意義上來說,它是連續(xù)的。
00000000 00000000 00000000 00000011
SUM = 2^0 + 2^1 = 3
那么怎么表示正負(fù)數(shù)?規(guī)定中,有符號(hào)整型數(shù),第32位為0代表正,1則為負(fù)
所以-1這么表示
10000000 00000000 00000000 00000001
最大正整數(shù)就可以這么表示
01111111 11111111 11111111 11111111
SUM = 2^0 + 2^1 + 2^2·······
可以發(fā)現(xiàn),這個(gè)變成了我們高中數(shù)學(xué),求等比數(shù)列前N項(xiàng)和
重溫下公式:
Sn = (1-q^n)/(1-q)
前面公式可以看出公比為2,有31項(xiàng)。
Sn = 2^31 - 1
所以要記住,有符號(hào)整型最大值為2^31 - 1 = 2147483647
最小值卻是-2147483648,有興趣研究可以百度之。
??根據(jù)常識(shí),IP的每一位的區(qū)域只有在0-255區(qū)間。根據(jù)它的二進(jìn)制就明了。
比如IP 127.0.0.1
01111111 00000000 00000000 00000001
IP每位區(qū)間只能在 [00000000,11111111]
套公式計(jì)算一下,[0,255]
IP字符串與整型的互換
PHP確實(shí)是好東西,幫我們弄了兩個(gè)函數(shù)`ip2long()`,`long2ip()`,代碼說話:
三個(gè)var_dump類型分別為string,int,string
這個(gè)的應(yīng)用的話,有一點(diǎn)是很實(shí)在的,那就是存SQL。
1.一個(gè)整型用的空間比一串字符串來的小。
2.SQL查詢的話,數(shù)字效率是高于字符串的。
其他還有很多,期待其他同學(xué)補(bǔ)充。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/21020.html
摘要:本文是淺析微信支付系列文章的第十三篇,主要講解在如何開通商戶平臺(tái)的紅包功能和為用戶發(fā)放紅包,以及查詢發(fā)送紅包記錄。操作路徑登錄微信支付商戶平臺(tái)產(chǎn)品中心現(xiàn)金紅包開通。 本文是【淺析微信支付】系列文章的第十三篇,主要講解在如何開通商戶平臺(tái)的紅包功能和為用戶發(fā)放紅包,以及查詢發(fā)送紅包記錄。 淺析微信支付系列已經(jīng)更新十三篇了喲~,沒有看過的朋友們可以看一下哦。 淺析微信支付:(余額提現(xiàn))企業(yè)...
摘要:運(yùn)行在瀏覽器端。未來軟件的大趨勢(shì)。相同點(diǎn)為語(yǔ)言結(jié)構(gòu),不是函數(shù)輸出一個(gè)或者多個(gè)變量的類型,長(zhǎng)度及值一般用于打印復(fù)雜變量結(jié)合標(biāo)記格式化輸出如數(shù)組對(duì)象等輸出變量的值。一般用于打印變量。中認(rèn)為變量的值為時(shí),變量雖然定義了,但是無實(shí)際的意義。 PHP目錄======== php介紹 2 基礎(chǔ) 31 運(yùn)算符 70 流程控制 77 函數(shù) 91 文件引入 100 ...
摘要:本文是淺析微信支付系列文章的第十二篇,主要講解在商戶存在的提現(xiàn)商戶付款到微信用戶零錢或者銀行卡需求。應(yīng)用場(chǎng)景微信支付已上線企業(yè)付款至銀行卡功能。企業(yè)付款到銀行卡發(fā)票與交易手續(xù)費(fèi)發(fā)票為拆分單獨(dú)開具。 本文是【淺析微信支付】系列文章的第十二篇,主要講解在商戶存在的提現(xiàn)、商戶付款到微信用戶零錢或者銀行卡需求。 淺析微信支付系列已經(jīng)更新十二篇了喲~,沒有看過的朋友們可以看一下哦。 淺析微信支...
閱讀 3118·2021-11-18 10:02
閱讀 2627·2021-10-13 09:47
閱讀 3074·2021-09-22 15:07
閱讀 805·2019-08-30 15:43
閱讀 1821·2019-08-30 10:59
閱讀 1702·2019-08-29 15:34
閱讀 1713·2019-08-29 15:06
閱讀 453·2019-08-29 13:28