www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > > 充電吧
[導讀]不同的CPU有不同的字節(jié)序類型 這些字節(jié)序是指整數(shù)在內存中保存的順序 這個叫做主機序最常見的有兩種1. Little endian:將低序字節(jié)存儲在起始地址2. Big endian:將高序字節(jié)存儲在

不同的CPU有不同的字節(jié)序類型 這些字節(jié)序是指整數(shù)在內存中保存的順序 這個叫做主機序
最常見的有兩種
1. Little endian:將低序字節(jié)存儲在起始地址
2. Big endian:將高序字節(jié)存儲在起始地址

?

LE little-endian
最符合人的思維的字節(jié)序
地址低位存儲值的低位
地址高位存儲值的高位
怎么講是最符合人的思維的字節(jié)序,是因為從人的第一觀感來說
低位值小,就應該放在內存地址小的地方,也即內存地址低位
反之,高位值就應該放在內存地址大的地方,也即內存地址高位

?

BE big-endian
最直觀最符合書寫習慣的字節(jié)序
地址低位存儲值的高位
地址高位存儲值的低位
為什么說直觀,不要考慮對應關系
只需要把內存地址從左到右按照由低到高的順序寫出
把值按照通常的高位到低位的順序寫出
兩者對照,一個字節(jié)一個字節(jié)的填充進去

?

例子:在內存中雙字0x01020304(DWORD)的存儲方式

內存地址
4000 4001 4002 4003
LE 04 03 02 01
BE 01 02 03 04

例子:如果我們將0x1234abcd寫入到以0x0000開始的內存中,則結果為
????? big-endian?? little-endian
0x0000?? 0x12?????? 0xcd
0x0001?? 0x23?????? 0xab
0x0002?? 0xab?????? 0x34
0x0003?? 0xcd?????? 0x12


x86系列CPU都是little-endian的字節(jié)序.

?

網絡字節(jié)順序是TCP/IP中規(guī)定好的一種數(shù)據表示格式,它與具體的CPU類型、操作系統(tǒng)等無關,從而可以保證數(shù)據在不同主機之間傳輸時能夠被正確解釋。網絡字節(jié)順序采用big endian排序方式。

為了進行轉換 bsd socket提供了轉換的函數(shù) 有下面四個
htons 把unsigned short類型從主機序轉換到網絡序
htonl 把unsigned long類型從主機序轉換到網絡序
ntohs 把unsigned short類型從網絡序轉換到主機序
ntohl 把unsigned long類型從網絡序轉換到主機序

在使用little endian的系統(tǒng)中 這些函數(shù)會把字節(jié)序進行轉換
在使用big endian類型的系統(tǒng)中 這些函數(shù)會定義成空宏

?

同樣 在網絡程序開發(fā)時 或是跨平臺開發(fā)時 也應該注意保證只用一種字節(jié)序 不然兩方的解釋不一樣就會產生bug.

注:
1、網絡與主機字節(jié)轉換函數(shù):htons ntohs htonl ntohl (s 就是short l是long h是host n是network)
2、不同的CPU上運行不同的操作系統(tǒng),字節(jié)序也是不同的,參見下表。
處理器???? 操作系統(tǒng)???? 字節(jié)排序
Alpha???? 全部???? Little endian
HP-PA???? NT???? Little endian
HP-PA???? UNIX???? Big endian
Intelx86???? 全部???? Little endian <-----x86系統(tǒng)是小端字節(jié)序系統(tǒng)
Motorola680x()???? 全部???? Big endian
MIPS???? NT???? Little endian
MIPS???? UNIX???? Big endian
PowerPC???? NT???? Little endian
PowerPC???? 非NT???? Big endian?? <-----PPC系統(tǒng)是大端字節(jié)序系統(tǒng)
RS/6000???? UNIX???? Big endian
SPARC???? UNIX???? Big endian
IXP1200 ARM核心???? 全部???? Little endian

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉