1.大端和小端問題
大小端位元組序與硬體有關 ,intel x86 都是小端位元組序
總結:大端是 按照正常我們書寫的順序來儲存的
小端是 按照我們書寫順序相反的
**實現:
#include int main()
putchar('\n');
printf("%x\n",a);
return 0;
}
檢視輸出結果,判斷大小端位元組序
2.網路位元組序和主機位元組序
網路位元組序是大端的
編寫程式時,要進行網路位元組序和主機位元組序的轉換,linux系統提供四個函式,進行轉換
#include
uint32_t htonl(uint32_t hostlong); 主機轉網路(unsigned long)
uint16_t htons(uint16_t hostshort); 主機轉網路(unsigned short)
uint32_t ntohl(uint32_t netlong); 網路轉主機 (unsigned long)
uint16_t ntohs(uint16_t netshort); 網路轉主機 (unsigned short)
位元組序 大小端
計算機的基本儲存單元是8位單位元組。多位元組資料,如4位元組的整型資料如何儲存的呢?是高位在記憶體高位元組?還是低位在記憶體高位元組?即位元組是按如何順序存放的?也就是所謂的位元組序,按照存放順序分為大端序 big endian 和小端序 little endian 記憶體位址訪問是由低位址到高位址...
大小端位元組序
計算機硬體有兩種儲存資料的方式 大端位元組序 big endian 和小端位元組序 little endian 比如十六進製制數0x0102,十六進製制每個數字佔4bit,四個數字16bit,也就是2byte,2個位元組儲存。0x0102高位位元組是0x01,低位位元組是0x02。l大端位元組序 高...
大小端, 位元組序
位元組 byte 作為計算機世界的計量單位,和大家手中的人民幣多少多少 元 乙個意思。反正,到了計算機的世界,說位元組就對了,使用人家的基本計量單位,這是入鄉隨俗。比如,乙個電影是1g個位元組 1gb 一首歌是10m個位元組 10mb 一張是1k個位元組 1kb 一元錢可以幹嘛?啥也幹不了,公交都不...