高位址 低位址 高位元組 低位元組 大端小端和儲存順序

2021-10-05 11:39:42 字數 874 閱讀 3341

參考部落格

一、高位址和低位址

二、高位元組低位元組

如int a=16777220,化為十六進製制是0x01 00 00 04則04屬於低位元組,01屬於高位元組

三、大小端模式

(1)如果a在記憶體中的存放順序為下圖(即低位元組存放在高位址),則為大端模式

(2)如果a在記憶體中的存放順序為下圖(即低位元組存放在低位址),則為小端模式

(3)如何互換(通過移位操作再或)

四、存放順序

1、原則

(1)乙個整數型別內部

低位址儲存低位,高位址儲存高位。比如int a=1,則儲存情況為0000(高位址) 0000 0000 0001(低位址)

(2)若干個區域性變數(在棧中儲存的)

先定義的高位址,後定義的低位址

(3)類、結構體或陣列的元素

先定義的低位址,後定義的高位址

五、測試說明

#includeusing namespace std;

union u;

int main()

class test ;

int main()

結果1>結果2>結果3>結果4=結果5《結果6

分析:結果1>結果2>結果3>結果4,是因為a、b、c、t都是區域性變數,在棧上儲存,棧是從高位址到低位址,因此位址逐漸減小。

結果5《結果6,是因為結構體內部,先定義的位址小,後定義的位址大,這與類內的成員,陣列總的元素,都是類似的。

分析它們的數值差,可以發現位元組對齊問題,陣列名占用4位元組等問題。

總的來說,具體的位址,需要考慮「棧的高位址到低位址」、「位元組對齊」、「陣列」這樣的特殊情況等等。

高位元組與低位元組,高位址與低位址,大端模式與小端模式

位元組順序是指佔記憶體多於乙個位元組型別的資料在記憶體中的存放順序,通常有小端 大端兩種位元組順序。小端位元組序指低位元組資料存放在記憶體低位址處,高位元組資料存放在記憶體高位址處 大端位元組序是高位元組資料存放在低位址處,低位元組資料存放在高位址處。高 低位元組 一般pc是低位元組序,如果按平時書...

高位元組與低位元組,高位址與低位址,大端模式與小端模式

位元組順序是指佔記憶體多於乙個位元組型別的資料在記憶體中的存放順序,通常有小端 大端兩種位元組順序。小端位元組序指低位元組資料存放在記憶體低位址處,高位元組資料存放在記憶體高位址處 大端位元組序是高位元組資料存放在低位址處,低位元組資料存放在高位址處。高 低位元組 一般pc是低位元組序,如果按平時書...

低位元組 高位元組 字位址 大端序 小端序全辨析

組成原理 本次總結這個知識點的起因是一道相對定址題中把這個知識點作為基本條件,然而其他的問題我都明白,卻卡在了低位元組為字位址的存放方式中。因此有必要再次進行細緻的回顧總結。先看這道題。設相對定址的轉移指令占用三個位元組。第乙個位元組為操作碼,第二,三個位元組為相對位移量 補碼表示 而且資料在儲存器...