計算機硬件
計算機硬件指的是組成計算機的各種物理設備,每一個物理設備都有不同的功能,稍微懂一點硬件的一些常識,把這些硬件組裝到一起就是一臺電腦了。有興趣也可以玩一些電腦的diy組裝。
- 內存:程序運行時臨時存儲數據的設備,程序結束之后內存釋放。
- 硬盤:永久存儲數據的設備(U盤、移動硬盤等都是一樣的)
- 顯卡:用來處理圖形圖像顯示的設備(如果玩游戲和做設計對顯卡要求比較高)
- 聲卡:用來處理聲音的設備(像主播們就需要一個專門的聲卡對聲音進行美化)
計算機軟件
計算機軟件分為系統軟件和應用軟件,下面簡單介紹一下他們的區別。
系統軟件
系統軟件一般指的就是操作系統,它運行在硬件之上的一種系統程序,如我們用到的windows、蘋果電腦中的macOS、以及手機端的Android和IOS等,這些都是系統軟件。
應用軟件
應用軟件是以操作系統為平臺,針對某一個特定需求開發的程序。如微信,淘寶等,在不同的操作系統上都有對應版本的App。
軟件的安裝與卸載
安裝軟件分為綠色版和安裝版,下面以windows系統為例簡單介紹一下他們在安裝和卸載上有什么不同。其他的操作系統會有所不同
安裝版軟件
從官網上下載安裝包,一般是一個.exe文件,其實就是一個可以自解壓的文件集合),運行安裝包時,會將此軟件的所有文件釋放到硬盤的指定路徑下(安裝路徑)、并在Windows系統的注冊表中注冊、修改系統配置一般也會創建快捷方式等等。
安裝版軟件在卸載的時候,一定要在控制面板中找到程序卸載正常卸載,或者使用第三方的軟件管理工具,像360軟件管家等。
綠色版軟件
綠色版軟件一般是給你一個.zip的壓縮包,用解壓軟件解壓就可以使用。如果要卸載也很方便,直接刪除就可以了。
計算機的計數方式
計算機中所有的數據都是采用二進制進行存儲的,由0和1組成,每8個二進制位是一個字節
二進制和十進制對比如下:
十進制 二進制
0 00000000
1 00000001
2 00000010
3 00000011
4 00000100
5 00000101
6 00000110
7 00000111
注意:除了數字可以采用二進制,其他的字符、圖片、聲音、視頻等都是采用二進制進行存儲的
除了二進制還有八進制、十進制、十六進制的計數方式。進制只是一種計數方式,因為我們生活中對使用十進制已經很習慣了,所以對其他進制并不是很容易接受。下面我們采用列舉的方式來感受一下分別用十進制、八進制和十六進制數數是怎樣的。
十進制數數
十進制使用0、1、2、3、4、5、6、7、8、9這十個數字表示,逢10進1
0、1、2、3、4、5、6、7、8、9
10、11、12、13、14、15、16、17、18、19
20、21、22....
八進制
八進制使用0、1、2、3、4、5、6、7這八個數字表示,縫8進1
0、1、2、3、4、5、6、7
10、11、12、13、14、15、16、17
20、21、22、23、24、25、26、27
30、31、32....
十六進制
十六進制使用0、1、2、3、4、5、6、7、9、a、b、c、d、e、f這十六個數字表示,縫16進1
0、1、2、3、4、5、6、7、9、a、b、c、d、e、f
10、11、12、13、14、15、16、17、18、19、1a、1b、1c、1d、1e、1f
20、21、22、23、24、25、26、27、28、29、2a、2b、2c、2d、2e、2f
字符存儲
前面說過計算機中所有的數據都是采用二進制來表示的,那么我們平時使用電腦也從來沒有看到0101這樣的二進制數據呀?是這樣的,每一個文件其實都是有對應的二進制編碼的,而對應能打開這個文件的軟件其實就起到了解碼的作用,把文件中的二進制編碼轉換為人能看懂的信息。不管是文字、圖片、視頻、音頻等都會有對應的編碼和解碼這兩個動作。這里我們就說一下字符(也就是文字和符號)是如何存儲的。
為了讓計算機能夠顯示字符,美國人發明了一套《美國信息交換標準代碼》簡稱ASCII碼表,它為26個大小寫字母,常用的標點符號,以及一些特殊符號等,每一個字符都編了1個字節組成的二進制碼。隨著計算機的在全世界的普及只能顯示英文肯定不行,所以后來各個國家也出了針對各個國家問題的編碼表,我們用得中文簡體的操作系統用的就是GBK的編碼表。但是這有造成一個問題,各個國家的編碼表不一致,可能一個文件在這里打開是正常的,然后再另一臺電腦上打開就是亂碼了。為了解決這個問題后來就有了UTF-8編碼表,它把全世界所有國家的文字進行的統一編碼,這樣更利于國家化。
下面是ASCII編碼的部分截圖
數據類型
計算機中每一個數據都會占用一定的內存空間,為了讓內存空間利用更加合理。在程序中吧數據分為各種數據類型,每一種數據類型能表示的數據范圍不一樣,占用的內存空間也不一樣。比如整數就有4中,byte、short、int、long,它們占用的內存空間分別是1個字節、2個字節、4個字節、8個字節。
數據類型轉化
數據類型轉換分為自動轉換和強制轉換
自動轉化:從小到大的轉化,不影響數據的大小
1. byte、short、char之間不轉化,參與運算會自動轉化為int
2. 有多種數據類型運算,結果以數據類型大的為準
強制轉換:從大到小的轉化,可能影響數據的大小
byte a=3;
byte b=4;
byte c=a+b; //錯誤:byte 在參與運算會自動轉化為int,其結果頁是int類型。
byte d=(byte)(a+b); //正確:a+b的結果為7,在byte范圍內,所以可以強制轉化。
byte e=(byte)128; //錯誤:語法上沒問題,但是改變了數據大小。