計算機科學概論(第10版) 閱讀筆記
第0章 緒論
-
概念的認識:
算法(algorithm):就是一系列的步驟,規定如何完成一項任務。 程序(program):某一個算法的表示稱作一個程序。 程序設計(programming):采用與機器兼容的形式進行編碼并將其輸入到機器中的過程。 軟件(software):程序及其所表示的算法總稱。 硬件(hardware):機器設備本身。
-
計算機科學:
早期的計算機所能處理的算法復雜性低,隨著局限性的消除,機器已經可以執行越來越艱巨復雜的任務。人們企圖用算法表達這些任務的構成,但卻感到思維能力上的不足,于是越來越多的工作上轉向算法和程序設計過程的研究,在這種情況下,數學家的理論研究開始有回報,由此孕育出了被稱作計算機科學的這門學科。
第1章 數據存儲
- 布爾運算:真 / 假的運算。
- 3中基本布爾運算:AND(與)、OR(或)、XOR(異或)。
- 特殊的布爾運算:NOT(非),它只有一個輸入,輸出就是輸入值的相反值。
-
門:門(gate)指的是一種設備,給出一種布爾運算輸入值時,可以得出該布爾運算的輸出值。
門:可以通過很多種技術制造出來,如,齒輪、繼電器和光學設備。門經常是通過微電子電路來實現的。
觸發器:觸發器(flip-flop)是一個可以產生0或1輸出值的電路,它的值會一直保持不變,除非其他電路過來的臨時脈沖使其改變成另一個值。(輸出值是在外界的刺激下,兩個值之間相互轉換的)
記錄信息:觸發器可以被設置為具有0或1的輸出值,其他電路可以通過發送脈沖到觸發器的輸入端調整這個值,還有其他一些電路可以用觸發器的輸出來對存儲值進行相應,這樣,許多觸發器被構成非常小的電子電路,可以用在計算機內作為記錄信息的一種方法,這些信息被編碼成0和1的模式。
超大規集成:(Very Large-scale integration)VLSI技術支持幾千個電子元件被構造在一個晶片(芯片chip)上,在某些情況下,VLSI被用來在單塊芯片上創建整個計算機系統。
流:一些位組成位串,一個長的位串被稱為流(stream)。
主存儲器:每一個電路能夠存儲單獨的一個位,這樣的位存儲就叫做主存儲器(main memory)。
存儲單元:典型的存儲單元容量是8位。(一個8位的串稱為一個字節byte)
存儲單元結構:通常假設存儲單元的位是排成一行的,該行的左端稱為高位端,右端稱為低位端,高位端最左以為稱為最高有效位。
存儲地址: 為了區分計算機主存儲器中各個存儲單元,每一個存儲單元都有一個唯一的“名字”,稱為地址(address);
隨機存取器:主存儲器有單個的、可編址的存儲單元組成,所以這些存儲單元可以根據需要獨立存取。為了反映 用任何順序存儲單元的能力,計算機的主存儲器常被稱為隨機存儲區(random access memory RAM)。
動態存儲器:許多技術可以存儲快速消散的微小電子,因此,這些設備可以屬性電路,可以在1s內反復補充電子很多次,這種就稱為動態存儲器(dynamic memory DRAM)。
-
存儲器容量:使用2的冪來設計存儲單元,會很方便,因此早期的計算機存儲器的大小通常以1024(2^10)個存儲單元為度量單位。
因為接近于1000,所以術語千字節(kilobyte KB)用來表示1024字節。 千字節 KB(kilo byte) 兆字節 MB(mega byte) 吉字節 GB(giga byte)
-
海量存儲器:也就是所謂的附加存儲設備,包括磁盤,CD盤,DVD盤,磁帶,閃存驅動器。
與主存儲器的區別: 優點: 穩定、容量大、價格低、可輕易從電腦上取下。 缺點: 需要機械運動,而主存儲器都是電子器實現的,所以讀寫的速度相對慢。
- 磁盤存儲:盤片表面有磁介質的涂層用以存儲數據,讀/寫的磁頭安裝在盤片的上面或下面。一個磁盤存儲系統包含若干個安裝在同一根軸上的盤片,中間留有空隙,一遍磁頭的讀寫操作。
-
扇區:因為一個道可以包含的數據通常比我們每一次要處理的數據多,所以每個道劃分若干個小弧區,稱為扇區(sector)。
磁盤上所有的扇區包含相同數目的二進制位。 每一個到分為相同數目的扇區。 外邊緣的道位的密度要高于內邊緣道的位的密度。 但是外邊緣道的數量要遠多于內邊緣的道數量。(所以外邊緣的利用率高)
-
硬盤系統: 小的磁盤容量僅有幾MB,但大的可達到幾GB,它可能有5~10個剛硬的盤片。由于這種磁盤系統所用的盤片是剛硬的,所以稱為硬盤系統。
硬盤每分鐘幾千轉,軟盤每分鐘固定300轉。 為了使盤片更快的旋轉,硬盤系統的磁頭不直接接觸盤片的表面。 而是“浮”在上面,之間的空隙非常小,以至于一顆灰塵都會阻塞。 造成破壞的現象稱為滑道,因此硬盤系統出廠前已經被密封在盒子里。
-
磁盤性能評估:
①:尋道時間(seek time):磁頭從一個道移動到另一個道的時間。 ②:旋轉延遲(rotation delay):磁頭準備完畢,盤片需要旋轉到指定數據的扇區,所需的時間。 ③:存取時間(access time):也就是尋道時間和等待時間之和。 ④:傳輸速率(transfer rate):讀寫的速率,這個速率受,內/外邊緣的影響。
磁帶:磁帶的一個主要缺點是卷軸之間移動的帶子很長,比如從開頭一下跳到結尾,可能需要很長時間,而磁盤的僅僅調整磁頭位置,旋轉盤片到指定扇區即可。
光盤:光學技術,由涂著保護層的反射材料制成。通過在反射層上創建偏差的方法在光盤上面記錄信息。激光束通過監視CD快速旋轉時反射層的不規則反射偏差來讀取信息。(Compact CD)。
-
閃存驅動器:用電子信號將二進制直接送到存儲介質中,該介質中,電子信息號使得二氧化硅的微小晶格截獲電子,從而轉換微電子電路的性質。因為可以保持截獲很多年,所以閃存技術適合存儲脫機數據。
優點: ①:不需要像磁學光學,那樣通過物理運動來存儲讀取信息。 ②:適合存儲脫機數據。 ③:存取速度快。 ④:對物理震動不敏感,他在便攜應用中的潛力是誘人的。 缺點: ①:反復的擦寫會逐漸損壞二氧化硅的晶格,不適合主存儲器應用。 ②:當涉及真正長期應用時,它們不如光學盤片可靠。
文件:海量存儲系統中的信息一般被分為組為較大的單元,稱為文件。
緩沖區:緩沖器通常是用于一個設備向另一個設備傳輸的過程中臨時存儲數據的區域。
用位模式表示信息:
-
文本的表示:通常由一種代碼表示,每一個不同的符號均賦予其相應的唯一的位模式。
ASCII碼表,Unicode 碼表
數值的表示:當信息只有數值時,如果還用編碼形式去表示那就有點浪費,比如表示 37的話,就需要使用 16個二進制位(兩個字節),而且以這種方式存儲,用兩個字節的16個二進制位存儲的最大數是99。所以這個時候使用 二進制計數法。16個二進制位可以存儲0~65535范圍內的任何一個整數。
-
圖像的表示:圖像表示為一組點,每一個點成為一個像素(pixel),每個像素的顯示被編碼,整個圖像就表示成這些已編碼像素的集合,這些集合被稱為位圖(bitmap)。
黑白照片:很長的位串表示每一行像素,每一位的取值0/1表示像素黑/白。 黑白照片(精致):每個像素用一組位(通常是8個)表示,可以表示出陰影。 彩色圖像: RGB編碼:每個像素表示3中顏色成分(紅綠藍),一個字節通常用來表示每一個顏色成分的亮度。一個像素占3個字節。例如 # 2AF
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****:
****: