本章內(nèi)容了解就行
進(jìn)制轉(zhuǎn)換
- 進(jìn)制的表示
// 編程中默認(rèn)的就是十進(jìn)制
int num = 12;
// 如何輸出十進(jìn)制 %i %d膀斋,以十進(jìn)制的方式輸出數(shù)據(jù)
printf("十進(jìn)制:%i\n", num);
// 在編程中想表示二進(jìn)制梭伐,需要在數(shù)字前面加上0b
int num1 = 0b1100;
printf("十進(jìn)制:%i\n", num1);
// 在編程中想表示八進(jìn)制,需要在數(shù)字前面加上0
int num2 = 014;
printf("十進(jìn)制:%i\n", num2);
// 在編程中想要表示十六進(jìn)制仰担,需要在數(shù)字前面加上0x
int num3 = 0xc;
printf("十進(jìn)制:%i\n", num3);
// 通過八進(jìn)制輸出12糊识,%o 就是以八進(jìn)制的方式輸出
printf("八進(jìn)制:%o\n", num);
// 通過十六進(jìn)制的形式輸出12 %x 就是以十六進(jìn)制輸出的占位符
printf("十六進(jìn)制:%x\n", num);
// 注意:在C語言中沒有以二進(jìn)制輸出的占位符
-
十進(jìn)制轉(zhuǎn)二進(jìn)制
- 用需要轉(zhuǎn)換的十進(jìn)制數(shù)除以2,記錄結(jié)果和余數(shù)
- 用結(jié)果除以2摔蓝,記錄結(jié)果和余數(shù)
- 重復(fù)第二步赂苗,知道結(jié)果是0
- 轉(zhuǎn)換成的二進(jìn)制就是余數(shù)從后往前拼接在一起
- 比如:余數(shù)是1 1 0 0 1 那么二進(jìn)制就是10011
-
二進(jìn)制轉(zhuǎn)十進(jìn)制
- 從二進(jìn)制數(shù)的低位數(shù)開始,用低位數(shù)乘以2的多少次冪
- 冪數(shù)從0開始
- 然后將結(jié)果相加
-
N位二進(jìn)制數(shù)的取值范圍0-2(n)-1
- 1位:0-1 0~2(1)-1
- 2位:0-3 0~2(2)-1
- 3位:0-7 0~2(3)-1
-
二進(jìn)制轉(zhuǎn)八進(jìn)制
- 三個二進(jìn)制位代表一個八進(jìn)制位贮尉,只需要將3個二進(jìn)制位轉(zhuǎn)換為十進(jìn)制拌滋,之后再將所有的結(jié)果連接起來
-
二進(jìn)制轉(zhuǎn)換為十六進(jìn)制
- 四個二進(jìn)制位代表一個十六進(jìn)制位,只需要將4個二進(jìn)制位轉(zhuǎn)換為十進(jìn)制猜谚,之后再將所有的結(jié)果連接起來