1. 程式人生 > >learing day 02

learing day 02

1.什麼是作業系統?
    是一個協調、管理、控制計算機硬體的控制程式

    作業系統可以分為兩部分:介面程式:將硬體的功能封裝成簡單的介面,用來給應軟體或者使用者使用,對上
                            核心:具體控制硬體,對下

2.核心態和使用者態?
    核心態和使用者態是CPU的兩種工作狀態    
    使用者態:CPU執行使用者程式/應用程式的狀態,處於使用者態不能控制硬體
    核心態:CPU執行作業系統核心所處的狀態,處於核心狀態能夠控制硬體

3.應用程式的啟動?
    前提:先啟動作業系統
    1.向作業系統提交程式啟動檔案的路徑
    2.作業系統根據檔案路徑把硬碟的資料讀入記憶體
    3.作業系統呼叫CPU來執行記憶體中剛剛讀入的程式程式碼

4.完整的計算機系統?
    應用程式,作業系統,計算機硬體
    應用程式執行平臺=作業系統+計算機硬體

5.程式語言分類
    機器語言:用二進位制指令程式設計,本質是直接操作硬體
              優點:執行效率高
              缺點:開發效率低,學習難度高
    
    組合語言:用英文標籤代替二進位制指令,本質也是直接操作硬體
              優點:執行效率高
              缺點:開發效率低,學習難度高    
    
    高階語言:用人類的字元去編寫程式,人類字元計算機無法理解,必須經過翻譯,翻            譯成機器語言才能執行
            編譯型:C
                    類似與谷歌翻譯-->gcc
                    特點:編譯一次,拿到結果可以重複執行,無需重新編譯

                    翻譯:程式--->gcc--->機器語言
                    優點:執行效率高
                    缺點:除錯程式麻煩,跨平臺性差
            
            解釋性:Python
                    類似於同聲傳譯-->直譯器
                    特點:解釋一行,執行一行,即邊翻譯邊執行
                    優點:開發效率高,跨平臺性高,除錯程式方便
                    缺點:執行效率低

python直譯器安裝,多版本共存
    我的電腦->屬性->高階系統設定->環境變數->修改系統path
    win10 直接新增
    win7  C:\Users\oldboy1;C:\Users\oldboy2;C:\Users\oldboy3;D:\python36

    MAC /etc/profile
            PATH=python的安裝路徑:$PATH
            export PATH
        source /etc/profile

第一個python程式,兩種執行程式方式
    互動式:除錯程式
    python程式的路徑:exp:python D:\test.txt

    重點:1.先啟動python直譯器
          2.將D:test.txt的程式碼讀入記憶體
          3.解釋執行
變數:什麼是變數?
            變:變化
            量:表示的狀態
            變數是一種可以反映狀態變化的一種機制

      為什麼要有變數?
              程式的執行本質就是一系列的狀態變化

      如何定義變數?  
              語法:變數名=值
                    變數名是對應值的索引
               exp:
                   level=0
                   level=1

                   age=18
                   age=19

                   is_live=True
                   is_live-False

                   name="Alan yang"

               python自動的垃圾回收機制
                       垃圾:值身上的引用次數為0
                       增加引用計數:
                           x=1
                           y=x
                       減少引用計數:
                           x="Alan yang"
                           del y #刪除y與1的繫結關係    
      變數的命名規範?
              #1.變數名只能是數字,字母或下劃線的任意組合
              #2.變數名的第一個字元不能為數字
              #3.關鍵字不能宣告變數名

      定義方式?
              駝峰體
                  AgeOfOldboy=58
              下劃線         
                  age_of_oldboy=58

      變數的三個特點:
          id:
          type:
          value:
      常量:不變的量
              AGE_OF_OLDBOY=18