python基礎-07-進制及其轉換

一、進制

進制: 進制也即是進位計數制,是人爲定義的帶進位計數的方法。對於任何一種進制–X進制,就表示每一位置上數運算時達到X就進位

二、計算機中常用進制: 二進制 八進制 十進制 十六進制

  1. 二進制: 由 0 1 兩個數字組成, 基數爲2
  2. 八進制: 由 0~7 八個數字組成, 基數爲8
  3. 十進制: 由 0~9 十個數字組成, 基數爲10
  4. 十六進制: 由 0~9 a~f 十六個數字組成, 基數爲16

三、進制見的相互轉換

  • 二進制 八進制 十六進制 --> 十進制

    • 按權展開法: 對應 n 位上的數乘以基數的 n次方, n 從 0 開始計數
    • 例如: 二進制數 10110110 = 1*2^7 + 0*2^6 + 1*2^5 + 1*2^4 + 0*2^3 + 1*2^2 + 1*2^1 + 0*2^0
  • 十進制 --> 二進制 八進制 十六進制

    1. 整數部分: 十進制整數除以基數取餘數直到餘數爲零, 將餘數反序排列
    2. 小數部分: 十進制小數乘以基數取整數部分, 順序排列.
    3. 例如: 27.25 化爲 二進制
      整數部分: 27 = 11011
      小數部分: 0.25 = 0.01
      十進制數 27.25 = 二進制數 11011.01
  • 二進制 八進制 十六進制間的轉換

    • 二進制-->八進制
    1. 整數部分: 從右向左數, 三位二進制數對應一位八進制數. 高位不足補零;
    2. 小數部分: 從左向右數, 三位位二進制數對應一位八進制數. 低位不足補零
  • 二進制-->十六進制

    1. 整數部分: 從右向左數, 四位二進制數對應一位十六進制數. 高位不足補零;
    2. 小數部分: 從左向右數, 四位位二進制數對應一位八進制數. 低位不足補零
  • 例如: 1000111011011 化爲八進制 和十六進制
    1. 1 000 111 011 011 = 八進制 10733
    2. 1 0001 1101 1011 = 十六進制 11db

四、python各進制的表示及轉換

  • python進制的表示, 進制的直接書寫.
    1. 二進制: 0b開頭
    2. 八進制: 0o開頭
    3. 十進制: 不能以0開頭
    4. 十六進制: 0x
  • python中進制轉換函數
    1. 轉爲二進制: bin(int x) 將整數轉爲二進制字符串, 返回的是二進制數的字符串
    2. 轉爲八進制: oct(int x) 將整數轉爲八進制字符串, 返回的是八進制數的字符串
    3. 轉爲16進制: hex(int x) 將整數轉爲十六進制字符串, 返回的是十六進制數的字符串

實力程序

a = 0b1000111001
b = 0o10
c = 0xaef
print("a:", a, "b:", b, "c:", c)
print(n := bin(10), type(n))  # bin(int x)
print(n := oct(9), type(n))  # oct(int x)
print(n := hex(17), type(n))  # hex(int x)

python基礎-原碼_補碼_反碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章