国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【學習筆記】【C語言】變量的內存分析

2019-11-14 18:50:20
字體:
來源:轉載
供稿:網友

計算機中的內存是以字節為單位的存儲空間。內存的每一個字節都有一個唯一的編號,這個編號就稱為地址。就好像酒店是以房間為單位的,每個房間都有一個唯一的房號,我們根據房號就能找到對應的房間。

1. 變量的存儲

1> 所占用字節數跟類型有關,也跟編譯器環境有關

clip_image002

 

2> 變量實例

int b = 10;

int a = 134;

*內存由大到小尋址

*只存儲二進制形式

*每個變量都有地址:第一個字節的地址就是變量的地址

3> 查看內存地址的兩種方式:%x和%p

4>查看整數的二進制形式

void putBinary(int n){    int bits = sizeof(n) * 8;    while (bits-->0) {        PRintf("%d", n>>bits&1);        if (bits%4==0) printf(" ");    }    printf("/n");}

2. 負數在內存中的存儲

1 int main()2  {3     int b = -10;  4     return 0;5  } 

在第3行定義了一個整型變量,它的值是-10。-10在內存中怎樣存儲的呢?其實任何數值在內存中都是以補碼的形式存儲的。

  • 正數的補碼與原碼相同。比如9的原碼和補碼都是1001
  • 負數的補碼等于它正數的原碼取反后再+1。(取反的意思就是0變1、1變0)

那么-10的補碼計算過程如下:

1> 先算出10的二進制形式:0000 0000 0000 0000 0000 0000 0000 1010

2> 對10的二進制進行取反:1111 1111 1111 1111 1111 1111 1111 0101

3> 對取反后的結果+1:1111 1111 1111 1111 1111 1111 1111 0110

因此,整數-10在內存中的二進制形式是:1111 1111 1111 1111 1111 1111 1111 0110

3. 取值范圍

clip_image001


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 来安县| 钦州市| 泰和县| 建瓯市| 无锡市| 乌海市| 石阡县| 安岳县| 阜城县| 郴州市| 天水市| 醴陵市| 恭城| 搜索| 称多县| 石河子市| 即墨市| 仪征市| 台东县| 聊城市| 永州市| 景泰县| 都昌县| 临城县| 津市市| 阜康市| 廉江市| 灯塔市| 迭部县| 榆社县| 延津县| 宁晋县| 黎城县| 漳浦县| 绥芬河市| 福安市| 迁西县| 惠来县| 星子县| 巧家县| 屏南县|