1 - 編程語言
1.1 編程
-
計算機為解決某個問題而使用 某種程序設計語言 、編寫程序代碼並得到結果的過程。
-
計算機程序:
計算機所執行的一系列的指令集合,用語言編寫的程序。
1.2 計算機語言
-
計算機語言指用於人與計算機之間通訊的語言,是兩者之間傳遞信息的媒介。
-
計算機語言可以分成三大類:機器語言,匯編語言和高級語言。
-
實際上計算機最終所執行的都是 機器語言,它是由“0”和“1”組成的二進制數。
1.3 編程語言
編程語言:
指用類似於人類語言的“語言”來控制計算機,讓計算機為我們做事情,這樣的語言就做編程語言(Programming Language)。
編程語言是用來控制計算機的一系列指令,有固定的格式和詞匯(不同編程語言的格式和詞匯不一樣),必須遵守。
如今通用的編程語言有兩種形式:匯編語言和高級語言。
-
匯編語言:與機器語言本質相同,都是直接對硬件操作,只不過指令采用了英文縮寫的標識符,容易識別記憶
-
高級語言:主要是相對於低級語言而言,它並不是特指某一種具體的語言,而是包括了很多編程語言,
常用的高級語言有:C語言、C++、Java、C#、Python、PHP、JavaScript、Go語言、Objective-C、Swift等。
C語言:puts ("你好"); PHP: echo "你好"; Java: System.out.println ("你好"); JavaScript: alert ("你好");
1.4 翻譯器
計算機不能直接理解任何除機器語言(0、1)以外的語言,所以必須把所寫的程序語言翻譯成機器語言才能執行程序
程序語言 翻譯成 機器語言的工具稱為 翻譯器。
翻譯器可以將我們所編寫的源代碼轉換為 機器語言(0、1),這也被稱為二進制化。
翻譯器翻譯的方式有兩種:一個是編譯;另一個是解釋;
區別在於翻譯的時間點不同;
-
編譯器:代碼執行之前進行編譯,生成中間代碼——java是編譯型語言;
-
解釋器:程序運行時進行及時解釋,並立即執行——js是解釋型語言;
當編譯器以解釋方式運行的時候,也稱之為解釋器。
1.5 編程語言和標記語言區別
-
編程語言:有很強的邏輯和行為能力。在編程語言里, 你會看到很多 if else 、for 、while等具有邏輯性和行為能力的指令,這是主動的。
-
標記語言:(html)不用於向計算機發出指令,常用於格式化和鏈接。標記語言的存在是用來被讀取的, 他是被動的。
2 - 計算機基礎
2.1 計算機組成
計算機組成 | 組成 | 分類 |
---|---|---|
硬件 | 輸入設備 | 鼠標、鍵盤、攝像頭 |
輸出設備 | 顯示器、打印機、投影儀 | |
CPU | 負責處理數據和運算 | |
硬盤 | 負責存儲數據、永久儲存 | |
內存 | 負責存儲數據、暫時儲存 | |
軟件 | 系統軟件 | Windows、Linux、macOS |
應用軟件 | 瀏覽器、word、vscode |
-
軟件是運行在硬件上的,如 硬盤和內存上;
-
CPU和內存是存儲在主板上的;
2.2 數據存儲
-
計算機內部使用二進制 0 和 1來表示數據。所有數據,包括文件、圖片等最終都是以二進制數據(0 和 1)的形式存放在硬盤中的。
-
所有程序,包括操作系統,本質都是各種數據,也以二進制數據的形式存放在硬盤中。平時我們所說的安裝軟件,其實就是把程序文件復制到 硬盤中。
-
硬盤、內存都是保存的二進制數據。
2.3 數據存儲單位
大小關系:bit < byte < kb < GB < TB<.....
-
位(bit): 1bit 可以保存一個 0 或者 1 (最小的存儲單位)
-
字節(Byte):1B = 8b
-
千字節(KB):1KB = 1024B
-
兆字節(MB):1MB = 1024KB
-
吉字節(GB): 1GB = 1024MB
-
太字節(TB): 1TB = 1024GB
2.4 程序運行
計算機運行軟件的過程:
1. 打開某個程序時,先從 硬盤 中把程序的代碼加載到 內存 中
2. CPU執行內存中的代碼
注意:之所以要內存的一個重要原因,是因為 cpu 運行太快了,如果只從硬盤中讀數據,會浪費cpu性能,所以,才使用存取速度更快的內存來保存運行時的數據。(內存是電,硬盤是機械)