C语言内存编址和寻址、内存对齐
生活随笔
收集整理的這篇文章主要介紹了
C语言内存编址和寻址、内存对齐
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
內存編址和尋址、內存對齊
- 內存的編址方法
- 關鍵:內存編址是以字節(jié)為單位的
- 內存和數(shù)據(jù)類型的關系
- 內存對齊
內存的編址方法
在程序運行時,計算機中CPU實際只認識內存地址,而不關心這個地址所代表的空間在哪里,怎么分布這些實體問題。因為硬件設計保證了按照這個地址就一定能找到這個內存空間,所以說關于內存單元有兩個概念:地址和空間。(地址和空間一一對應且永久綁定)
關鍵:內存編址是以字節(jié)為單位的
任何一個有效的內存地址都代表了一個字節(jié)的內存空間,這個大小是固定的,就是一個字節(jié),即8bit。
內存和數(shù)據(jù)類型的關系
在C語言中的基本數(shù)據(jù)類型有:char short int long float double
int整形即整數(shù)類型,這個整就體現(xiàn)在他和CPU本身的數(shù)據(jù)位寬是一樣的,比如32位的CPU,整形就是32位,int就是32位。
數(shù)據(jù)類型是用來定義變量的,而這些變量需要存儲,運算在內存中。所以數(shù)據(jù)類型必須和內存相匹配才能獲得最好的性能,否則可能不工作或者效率低下。在32位系統(tǒng)中定義變量最好用int,因為這樣效率高。原因就在于32位的系統(tǒng)本身配合內存等也是32位,這樣的硬件配置天生適合定義32位的int類型變量,效率最高。也能定義8位的char類型變量或者16位的short類型變量,但
總結
以上是生活随笔為你收集整理的C语言内存编址和寻址、内存对齐的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 272卡路里等于多少脂肪?
- 下一篇: C语言位、字节、半字、字的概念和内存位宽