計算機只能識別0和1,所有資料在計算機中以二進位制形式儲存,想要學好計算機就要先掌握數制間的轉換。常見的數制有二進位制,八進位制,十進位制,十六進製制。
1.十進位制轉為二進位制
a.寫出2^n
b.用所求十進位制數與2^n比較,若大於等於記1,減去2^n,小於記0
c.所得數再與2^(n-1)比較(同第二步),直至n為0
例:100轉換為二進位制
100<2^7 0
100>2^6 1
100-2^6=36>2^5 1
36-2^5=4<2^4 0
4<2^3 0
4>=2^2 1
4-2^2=0<2^1 0
0<2^0 0
所以100的二進位制為1100100
2.二進位制轉為十進位制
用二進位制每一位乘2^然後相加
例:1100100轉為十進位制
1*2^6+1*2^5+0*2^4+0*2^3+1*2^2+0*2^1+0*2^0=100
3.十進位制轉為其它進製
a.先將十進位制轉為二進位制
b.由後往前每三位二進位制轉為十進位制當作八進位制的一位,高位不夠補0
由後往前每四位二進位制轉為十進位制當作十六進製制的一位,高位不夠補0
資料在計算機中以補碼的形式儲存,所以我們要掌握原碼,反碼,補碼之間的轉換。
原碼:在二進位制數前加乙個符號位,0表示正數,1表示負數。
反碼:正數的反碼是它本身,負數的反碼是除符號位取反。
補碼:正數的補碼是它本身,負數的補碼是反碼加1。
例1:100的原碼,反碼,補碼
原碼:01100100
反碼:01100100
補碼:01100100
例2:-100的原碼,反碼,補碼
原碼:11100100
反碼:10011011
補碼:10011100
c語言中型別分為基本型別,列舉型別,空型別,派生型別。基本型別又分為整型和浮點型。本文主要講述整型,其他型別後續會講。
整型
大小/位元組
float
1short
2int
2/4long
4long long8
int的大小由編譯器決定,16位編譯器上為2位元組,32位編譯器為4位元組。
(這裡以char為例講解整型)
a.整型分為無符號和有符號,無符號的取值範圍為0~255,有符號的取值範圍為-128~127
int main()
return
0;}
int main()
return
0;}
這兩個程式執行結果有什麼區別?
第乙個程式進入死迴圈,因為它定義的是有符號的char,最大為127,無法退出迴圈。
第二個程式定義的是無符號char,所以它輸出了0~127.
c語言基礎篇(一)
一 基本資料型別 整型 int 實型 float double 字元型 char 這些資料型別是用來修飾 變數 程式執行過程中可以改變的量 二 變數的命名規則 1.以字母丶下劃線開頭,中間可以包含數字,但不能以數字開頭 2.可以使用美元符號開頭 但不建議 3.見名知意 4.不可使用系統保留字 三 賦...
C 基礎語言篇(一)
1.說一下static關鍵字的作用 全域性靜態變數 區域性靜態變數 靜態函式 類的靜態成員 類的靜態函式 2.說一下c 與c的區別 設計思想 物件導向與面向過程 語法上 3 說一下c 中四種cast轉換 const cast 將const變數轉為非const static cast 用於各種隱式型別...
C 語言基礎篇
一 型別轉換 在 c 中,變數分為以下幾種型別 1.值型別變數可以直接分配給乙個值。它們是從類system.valuetype中派生的。值型別直接包含資料。比如int char float,它們分別儲存數字 字元 浮點數。當您宣告乙個int型別時,系統分配記憶體來儲存值。2.引用型別不包含儲存在變數...