《計算機與計算機科學》摘錄筆記

《計算機與計算機科學》摘錄筆記

書籍地址,感謝分享程序員

  1. 一臺數字機不是單一的機器,而是由五個不一樣的要素組成的系統:1.中央處理器;2.輸入設備;3.存儲設備;4.輸出設備;5.被稱爲總線的通訊網絡,它將全部要素鏈接起來並將系統和外界鏈接起來;數據庫

  2. 存儲器指存儲信息供中央處理器快速檢索的計算機芯片。隨機存儲器(RAM)用來存儲操做計算機程序的信息和指令。一般,程序由磁盤驅動器的存儲區調到隨機存儲器中。隨機存儲器也稱做易失性存儲器,由於當計算機的電源關閉時,計算機芯片中的信息隨着丟失。只讀存儲器(ROM)必須永久性可供計算機操做使用的關鍵信息和軟件,如從開機到關機一直指揮計算機運行的操做系統。只讀存儲器叫作非易失性存儲器,由於當計算機的電源關閉時,存儲芯片中的信息不會丟。編程

  3. 編程語言可分爲低級語言和高級語言。低級編程語言或機器語言,是編程語言中最基礎的類型,能夠被計算機直接理解。機器語言視計算機制造商與型號不一樣而有所區別。高級語言是必須首先翻譯成機器語言計算機才能理解和處理的編程語言。C、C++、PASCAL和FORTRAN都是高級語言的例子。彙編語言是中級語言,很是接近於機器語言,沒有其餘高級語言所表現出的語言複雜程度,但仍然須要翻譯成機器語言。數組

  4. 一條典型的機器語言指令可能寫成 10010 1100 1011,意思是把存儲寄存器A的內容加到存儲寄存器B的內容中。安全

  5. 在面嚮對象語言中,用來編寫程序的代碼和由程序處理的數據,組合成叫作對象的單元。對象進一步組合成類,而類則定義對象必須具備的屬性。類的一個簡單例子就是書這個類。這個類中的對象多是小說和短篇小說。對象還有某些與其相關的功能,稱爲方法。計算機經過使用一個對象的某種方法來訪問該對象。方法對對象中的數據執行某種操做,而後將值返回給計算機。對象的類也可進一步組合成層,而在層中一個類的對象可繼承另外一個類的方法。面嚮對象語言提供的這種結構,使該語言對於複雜的編程任務很是有用。 ====》舉例,以後寫代碼,把對象用到的屬性和方法寫到最外邊的對象上,賦值爲空,說明這個方法和屬性,方便查看;服務器

  6. 數據聲明語句給稱爲變量的那些程序元素以名稱和屬性。變量在程序中能夠賦予不一樣的值。變量能夠具備的屬性稱爲類型,它們包括:變量中能保存哪些可能的值;這些值中使用何種程度的數值精度;以及一個變量能夠如何以有組織結構的方式------如以表或數組的形式——表示一組比較簡單的值。在許多編程語言中,一個關鍵的數據類型是指針。指針變量自己沒有值,而是含有計算機能夠用來查找某個其餘變量的信息——也就是說,它們指向另外一個變量。網絡

  7. 表達式是語句的一段,用於描述要對一些程序變量執行的一系列計算操做,如 X+Y/Z,其中X、Y和Z爲變量,加法和除法是計算操做。賦值語句給一個變量賦予得自某個表達式的值,而條件語句則指定要被測試、而後用於選擇接下來應該執行的其餘語句的表達。編程語言

  8. 過程和函數語句將某些代碼塊定義爲之後可在程序中回調的過程或函數。這些語句也定義程序員可選的變量和參數種類,以及當表達式訪問過程或函數時代碼所返回的值的類型。許多編程語言也允許叫作宏的小翻譯程序。宏將那些用程序員定義的語言結構編寫的代碼段翻譯成編程語言能夠理解的語句。分佈式

  9. 計算機程序是指揮計算機執行某種處理功能或功能組合的一套指令。函數

  10. 將源代碼翻譯成目標代碼的應用程序有3種:編譯程序、解釋程序和彙編程序。這3種應用程序有不一樣的操做方式,對不一樣類型的編程語言進行操做,可是,它們都要達到將編程語言翻譯成機器語言的相同目的。

  11. 編譯程序將使用FORTRAN、C和Pascal等高級編程語言編寫的文本文件一次性從源代碼翻譯成目標代碼。這不一樣於BASIC等解釋執行的語言所採起的方式。在解釋執行的語言中,程序是隨着每條指令的執行而逐個語句地翻譯成目標代碼的。解釋執行的語言的優勢是,它們能夠當即開始執行程序,而不須要等到全部的源代碼都獲得編譯。對程序的更改也能夠至關快地進行,無需等到程序從新編譯完。解釋執行的語言的缺點是,它們執行起來慢,由於每次運行程序,都必須對整個程序一次一條指令地翻譯。另外一方面,編譯執行的語言只編譯一次,所以計算機執行起來可比解釋執行的語言快得多。因爲這個緣由,編譯執行的語言比解釋執行的語言經常使用,並且,在專業和科學領域幾乎老是應用編譯執行的語言。

  12. 另外一種翻譯程序是彙編程序,它用於以彙編語言編寫的程序或程序組成部分。彙編語言也是一種編程語言,但它遠比其餘類型的高級語言相似於機器語言。在彙編語言中,一個語句一般能夠翻譯成機器語言的一條指令。今天,彙編語言不多用來編寫整個程序,而是最經常使用於程序員須要直接控制計算機某方面功能的狀況。

  13. 並行運算

致力於並行計算領域研究的計算機科學家們,推出了許多新的程序模型。在並行計算中,多箇中央處理器同時合做處理同一個問題。一個問題的組成部分由不一樣的處理器同時處理,這樣就加快了問題的解決速度。因爲並行處理計算機的極端複雜性,以及使其儘量有效地運行所包含的困難,爲這種系統設計程序的科學家和工程師面臨着許多挑戰。 一種稱爲分佈式計算的並行計算,使用多個互連計算機的中央處理器來解決問題。用來在分佈式計算應用環境下處理信息的計算機,經常經過因特網鏈接。因特網的應用正在成爲分佈式計算的一種特別有用的形式,尤爲是在使用Java等編程語言的狀況下。在這種應用中,用戶登陸到一個站點,並下載一個Java程序到其計算機上。該Java程序運行時,就會與其所來自的站點上的其餘程序通訊,也能夠與不一樣計算機或站點上運行的其餘程序通信。

  1. 軟件開發的瀑布模型

  2. 因爲使用實現技巧規避了設計問題,這也可能致使不良的系統結構。

  3. 演化開發

演化開發基於這樣的思想:開發一個初始的實現,讓其接受用戶評論,並讓其通過多個版本的改進,一直到開發出可以知足須要的系統(圖5A-2)。規格說明、開發及驗證活動不是分開進行,而是交叉進行,各項活動之間有快速的信息反饋。

一種是探索式開發。在這種類型中,過程的目標是與客戶協做探索其需求,並交付一個最終的系統。

  1. 組件開發

18. 分佈式的數據模型

分佈式的數據模型能夠將不一樣的數據庫訪問請求分開在不一樣的服務器上; 分佈式數據庫模型並不是一種新模型,而是基於關係模型的。可是,數據存儲在經過因特網或用廣域網通訊的數臺計算機上。每臺計算機(或站點)保持數據庫的一部分或整個數據庫。換句話說,數據或者是分段存儲的——每一個站點存儲一段,或者被每一個站點複製一份。在分段型分佈式數據庫中,數據是本地化的,本地使用的數據存儲在相應的站點上。然而,這並不意味着一個站點不能訪問存儲在另外一個站點上的數據,但訪問大可能是本地性的,偶爾是全局性的。雖然每一個站點對其本地數據具備徹底的控制,但也存在經過因特網或廣域網的全局控制。例如,一家制藥公司可能在許多國家擁有多個站點。每一個站點有一個數據庫,存儲着本身僱員的信息。可是,中心人事部門能夠控制全部的數據。 擁有這種數據庫是爲了安全,若是一個站點上的系統發生故障,該站點的用戶能夠訪問另外一個站點上的數據。

相關文章
相關標籤/搜索