欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言入門篇--理解地址及內(nèi)存

 更新時間:2021年08月26日 16:32:58   作者:yycure  
本篇文章是基礎篇,適合c語言剛?cè)腴T的朋友,本文主要介紹了c語言的內(nèi)存及地址,幫助大家快速入門c語言的世界,更好的理解c語言

1.內(nèi)存

  • 內(nèi)存是電腦中一個重要的存儲器,計算機中所有的程序都在內(nèi)存中運行的,內(nèi)存的性能對計算機的影響非常大。
  • 內(nèi)存是計算機與CPU進行溝通的橋梁,計算機會把程序由硬盤加載到內(nèi)存中后再去使用。
  • 為了有效的使用內(nèi)存,把內(nèi)存劃分成一個個小的內(nèi)存單元,每個內(nèi)存單元的大小是1個字節(jié)。

為了能夠有效的訪問即快速找到內(nèi)存的每個單元,就給內(nèi)存單元進行了編號,這些編號被稱為該內(nèi)存單元的地址。

一般運行一個程序主要涉及計算機的三個設備:內(nèi)存、CPU、硬盤。

1.1內(nèi)存和CPU的關(guān)系

CPU是負責數(shù)據(jù)的運算和處理,內(nèi)存是用來交換數(shù)據(jù),如果沒有內(nèi)存則CPU就無法接收到數(shù)據(jù)。

1.2內(nèi)存和硬盤的關(guān)系

在這里插入圖片描述

eg:C語言中定義變量,都是在程序運行起來后在內(nèi)存中開辟空間。

2.地址

2.1概念

(1)為了有效的使用內(nèi)存,把內(nèi)存劃分成一個個小的內(nèi)存單元,每個內(nèi)存單元的大小是1個字節(jié)。

(2)為了能夠有效的訪問即快速找到內(nèi)存的每個單元,就給內(nèi)存單元進行了編號,這些編號被稱為該內(nèi)存單元的地址。

2.2地址編號

在32位平臺下,內(nèi)存單元的地址是由32位的二進制數(shù)(即8位十六進制數(shù))依次編號。

所以內(nèi)存單元共有2^23個,而每一個內(nèi)存單元保存1個字節(jié)的內(nèi)容。(具體見上圖)

ps:

計算機訪問內(nèi)存的基本單位是字節(jié)。

一般計算機有32位和64位機器。

以32位機器為例,則能安裝的最大內(nèi)存為(2^32)*(1字節(jié))=4GB

ps:4GB計算來源: (2^32)*(1字節(jié))=(2*10)*(2*10)*(2*10)*(2*2)*(1字節(jié))=4GB

常見的存儲單位:

bit(位)、B(字節(jié))、KB(千字節(jié))、MB(兆字節(jié))、GB(千兆字節(jié))。

B 是 Byte 的縮寫。

換算關(guān)系:

1B=8bit

1KB=1024B

1MB=1024KB

1GB=1024MB

2^10=1024

為了有效的使用內(nèi)存,把內(nèi)存劃分成一個個小的內(nèi)存單元,每個內(nèi)存單元的大小是1個字節(jié)。

為了能夠有效的訪問即快速找到內(nèi)存的每個單元,就給內(nèi)存單元進行了編號,這些編號被稱為該內(nèi)存單元的地址。

32位計算機是指能同時處理32位二進制數(shù),內(nèi)存單元的地址是由32位的二進制(即8位十六進制)數(shù)依次編號,所以內(nèi)存單元共有2^23個,而每一個內(nèi)存單元是1個字節(jié)。

所以有:
(2^32)*(1字節(jié))=(2*10)*(2*10)*(2*10)*(2*2)*(1字節(jié))=1024*1024*1024*4*(1字節(jié))=4GB

2.3關(guān)于編址

(1)計算機為什么對每個字節(jié)進行編址?

提高查找效率。計算機內(nèi)存中編址從最低的地址,依次向上進行編址,有了地址就可以對計算機中每個字節(jié)進行快速尋址,方便計算機進行快速查找。

(2)所有的編制都是連續(xù)編址的。

(3)編址是由硬件電路自動完成的。

2.4使用

(1)C語言中定義變量都是在內(nèi)存中定義的,定義變量的本質(zhì)是開辟空間。

(2)每個變量都有地址,取一個變量的地址稱作取地址。

(3)指針就是地址。

eg:

char a='A';
int b=10;

在這里插入圖片描述

以上就是C語言入門篇--理解地址及內(nèi)存的詳細內(nèi)容,更多關(guān)于C語言的資文章料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 為什么要學習C語言 C語言優(yōu)勢分析

    為什么要學習C語言 C語言優(yōu)勢分析

    不止一個學生問到我:“老師,為什么我們的應用程序設計要學C語言而不是別的?C語言不是已經(jīng)過時了嗎?如果現(xiàn)在要寫一個Windows程序,用VB或Dephi開發(fā)多快呀,用C行嗎?退一萬步,為什么選擇C而不是C++呢?”
    2013-07-07
  • C++面向?qū)ο髮崿F(xiàn)五子棋小游戲

    C++面向?qū)ο髮崿F(xiàn)五子棋小游戲

    本文介紹了如何運用面向?qū)ο笏枷脒M行五子棋游戲的設計與開發(fā),與面向過程程序設計比較,面向?qū)ο蟪绦蛟O計更易于實現(xiàn)對現(xiàn)實世界的描述,提高軟件的擴展性和可維護性。附上最終的程序源碼,推薦給大家,有需要的小伙伴可以參考下。
    2015-03-03
  • strcat函數(shù)實現(xiàn)簡單示例

    strcat函數(shù)實現(xiàn)簡單示例

    這篇文章主要介紹了strcat函數(shù)實現(xiàn)簡單示例,需要的朋友可以參考下
    2014-03-03
  • 零基礎學習C/C++需要注意的地方

    零基礎學習C/C++需要注意的地方

    這篇文章主要介紹了零基礎學習C/C++需要注意的地方,文中講解非常細致,供大家參考和學習,想要學習C/C++的可以閱讀此文
    2020-06-06
  • 詳解QListWidget如何實現(xiàn)自定義Item效果

    詳解QListWidget如何實現(xiàn)自定義Item效果

    這篇文章主要為大家介紹了如何通過QListWidget實現(xiàn)自定義Item效果,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-04-04
  • C++教程(超長最全入門)

    C++教程(超長最全入門)

    這篇文章主要介紹了C++教程(超長最全),需要的朋友可以參考下
    2023-05-05
  • C語言實現(xiàn)獲取內(nèi)存信息并輸出的實例

    C語言實現(xiàn)獲取內(nèi)存信息并輸出的實例

    這篇文章主要介紹了C語言實現(xiàn)獲取內(nèi)存信息并輸出的實例的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • C語言scandir函數(shù)獲取文件夾內(nèi)容的實現(xiàn)

    C語言scandir函數(shù)獲取文件夾內(nèi)容的實現(xiàn)

    scandir?函數(shù)用于列舉指定目錄下的文件列表,本文主要介紹了C語言scandir函數(shù)獲取文件夾內(nèi)容的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • C語言實現(xiàn)商品管理系統(tǒng)開發(fā)

    C語言實現(xiàn)商品管理系統(tǒng)開發(fā)

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)商品管理系統(tǒng)開發(fā),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C++實現(xiàn)LeetCode(63.不同的路徑之二)

    C++實現(xiàn)LeetCode(63.不同的路徑之二)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(63.不同的路徑之二),本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07

最新評論