字節(jié)序,或字節(jié)順序("Endian"、"endianness" 或 "byte-order"),描述了計(jì)算機(jī)如何組織字節(jié)窒所,組成對(duì)應(yīng)的數(shù)字。
? ?每個(gè)內(nèi)存存儲(chǔ)位置都有一個(gè)索引或地址帆锋。每一 字節(jié)可以存儲(chǔ)一個(gè) 8位數(shù)字(即 介于0x00 和 0xff 之間)吵取,因此,你必須保留不止一個(gè)字節(jié)來(lái)儲(chǔ)存一個(gè)更大的數(shù)字【庀幔現(xiàn)在皮官,大部分需占用多個(gè)字節(jié)的數(shù)字排序方式是 little-endian(譯者注:可稱(chēng)小字節(jié)序、低字節(jié)序实辑,即低位字節(jié)排放在內(nèi)存的低地址端捺氢,高位字節(jié)排放在內(nèi)存的高地址端。與之對(duì)應(yīng)的 big-endian 排列方式相反剪撬,可稱(chēng)大字節(jié)序摄乒、高字節(jié)序),所有的英特爾處理器都使用 little-endian残黑。little-endian 的意思是使用低位儲(chǔ)存更重要的信息馍佑,least-to-most-significant(最低有效(least significant)字節(jié)取第一個(gè)位置,或者說(shuō)梨水,地址最低的位置)拭荤,可類(lèi)比歐洲通用的日期書(shū)寫(xiě)方式(例如,31 December 2050冰木。譯者注:年份是最重要的穷劈,月份其次,日期最后)踊沸。
? ?自然, big-endian 是相反的順序, 可類(lèi)比 ISO 日期格式(例如 2050-12-31)歇终。big-endian 通常被稱(chēng)作"網(wǎng)絡(luò)字節(jié)順序"("network byte order"), 因?yàn)榛ヂ?lián)網(wǎng)標(biāo)準(zhǔn)通常要求數(shù)據(jù)使用 big-endian 存儲(chǔ),從標(biāo)準(zhǔn) Unix 套接字(socket)層開(kāi)始逼龟,一直到標(biāo)準(zhǔn)化網(wǎng)絡(luò)的二進(jìn)制數(shù)據(jù)結(jié)構(gòu)评凝。此外,老式 Mac 計(jì)算機(jī)的 68000 系列 和 PowerPC(譯者注:IBM 與 Apple 公司聯(lián)合生產(chǎn)的個(gè)人臺(tái)式機(jī))微處理器曾使用 big-endian腺律。
舉個(gè)例子奕短,用不同字節(jié)序存儲(chǔ)數(shù)字 0x12 34 56 78
(即十進(jìn)制中的305 419 896
):
? ? little-endian:0x78 0x56 0x34 0x12
? ? big-endian:0x12 0x34 0x56 0x78