【python】1.進制之間的轉換

  1. 第1天進制以及進制之間的轉換
    1. 進制的概述

數據存儲

思考:爲什麼使用計算機

存儲數據、計算數據(快、海量、可計算)

思考:數據存放在哪裏?

數據存儲在內存中

思考:數據是如何存放在內存中的

10

10.5

“Hello word”

在計算機的組成結構,存儲器,存儲器是用來存儲程序和數據的部件,---》內存

內存:

抽象

兩種狀態開和關(0和1)

字節---8位(8個開關)

數據在內存中存儲的單位

1bit

1字節=8bit

1K=1024字節

1M=1024K

1G=1024M

1T=1024G

1P=1024T

思考:內存以何種形式存儲數據?

內存中以二進制的形式進行存儲,0和1

進制也就是進位計數制

    1. 進制的分類

生活中最常見的進制----》十進制

常見的進制:

二進制

八進制

十進制

十六進制

 

二進制:

任何數據在計算機中都是二進制的形式,二進制早期由電信開關演變而來,

      1. 二進制

特點:

由0和1組成,0b開頭,逢二進一

例如:

0+0=0

0+1=1

1+1=10

11+1=100

      1. 八進制

特點:

由數字0-7組成,逢八進一,以0O開頭,0,1,2,3,4,5,6,7

1+7=10

1+2=3

      1. 十進制

特點:

由0-9組成,逢十進一,整數的默認是十進制

      1. 十六進制

特點:

十六進制的範圍0-9 A-F,0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

以0x開頭

1+F=10

進制的作用:方便計算機內部計算。

 

    1. 進制之間的轉換

十進制轉換爲二進制直到商爲0,餘數反轉(逆序)

規則:

除基取餘

      1. 十進制轉二進制

做除法,餘數逆序

10(10)-----》1010(2)

10/2 

5/2  0

2/2   1

1/2    0

0    1

則10轉化爲二進制位1010

      1. 十進制轉八進制

10(10)---》12(8)

10/8

1/8   2

0    1

      1. 十進制轉化爲十六進制

直接除以16,餘數在10-15之間用A-F來表示

10(10)---》A(16)

      1. 二進制轉十六進制

當前的數字乘以2的位數的次方,最後相加

1010

0*20+1*21+0*22+1*23

      1. 八進制轉二進制

一轉三位,八進制中的一位相當於二進制中的三位,轉化的時候按照十進制進行轉換

65(8)---》110101(2)

6/2

3/2   0

1/2   1

0   1

6---》110(2)

5/2

2/2   1

1/2   0

0   1

5---》101(2)

      1. 二進制轉化爲八進制

三位轉一位,從第一位開始取,高位不夠補0

110101(2)---》65(8)

      1. 十六進制裝二進制

1111

一位轉四位,十六進制的一位相當於二進制的四位,轉換時按照十進制轉換。

A4---》1010 0100

      1. 二進制轉化爲十六進制

四轉一,從低位取,高位不夠補0

補充:

如何將十進制轉化爲八進制或十六進制

可以先將10---》2---》8

    1. 進制之間的快速轉換

可以使用python中的函數來實現

下面符號對應進制數

b:二進制

d:十進制

o:八進制

x:十六進制

十進制轉化爲二進制調用函數bin   print(bin(10))

十進制轉換爲八進制調用函數oct   print(oct(10))

十進制轉換爲十六進制---》hex   print(hex(10))

 

二進制轉化爲十進制eval  print(eval("0b1010"))

八進制轉換爲十進制int   int(參數1,參數2),參數1需要轉換的數,參數2需要轉換的類型   print(int(“0o12”,8))

十六進制轉十進制int  print(int("0xc",16))

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