歡迎使用CSDN-markdown編輯器

進制

  • C語言中系統默認數值爲十進制
    默認就是10進制 eg. int num = 12;
    在前面加上一個0就代表八進制 eg.int num1 = 014;
    %d是以十進制的方式輸出一個整數 printf(“%d\n”, num1);
    %o是以八進制的方式輸出一個整數 printf(“%o\n”, num);
    在數值前面加上0b就代表二進制 int num2 = 0b1100;
    在數值前面加上0x就代表十六進制 int num3 = 0xc;
    %x是以十六進制的方式輸出一個整數 printf(“%x\n”, num);
  • 數值”不看你存,只看你取”:
    eg. int num1 = 077;//以八進制形式存入變量中
    printf(“%x\n”,num1); //以十六進制形式輸出num1中的數據

進制轉換

  • 二進制轉換爲八進制:規律:三個二進制位代表一個八進制位;
  • 二進制轉換爲十六進制:規律:四個二進制位代表一個十六進制位

原碼反碼補碼

  • 二進制的最高位我們稱之爲符號位:
    如果符號位是0代表是一個正數,
    如果符號位是1代表是一個負數.
  • 正數的反碼補碼就是他的原碼;
  • 負數的反碼是他的符號位不變,其他位取反得到的;
  • 負數的補碼是他的反碼加1得到的;
  • 注意:無論正數負數在內存中存儲的都是補碼.
    10000000 00000000 00000000 00001100 (-12的原碼)
    11111111 11111111 11111111 11110011(反碼, 符號位不變其它位取反)
    11111111 11111111 11111111 11110100(補碼,反碼+1)
發佈了23 篇原創文章 · 獲贊 0 · 訪問量 8969
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章