存儲器講課
『壹』 雲課堂和在線課堂有什麼區別
雲課堂是指利用伺服器已經存儲好的講課視頻進行教學,而在線課堂是指雙方利用網路實現實時教學
『貳』 信息技術作業!~
我們在基本配置中已經認識了主機箱、顯示器、鍵盤、滑鼠、音箱和話筒。這些我們能夠看得見、摸得著的設備就是我們常常說起的"硬體",它就好比我們人類的大腦和身體,是物質的,是進行一切活動的基礎。 鍵盤、滑鼠和話筒都是給計算機送信號的,於是我們叫它們"輸入設備",而顯示器、音箱是為計算機向外界傳達信息的,於是我們叫它們"輸出設備"。這就好像我們的眼睛、耳朵和鼻子是給我們以視覺、聽覺、嗅覺信息的,而我們的嘴、面部表情和四肢是表達我們的看法和感情的。是否還有其他的輸入和輸出設備呢?不但有,而且還非常多。事實上,正是各種功能各異的外圍設備使我們的計算機變得更加豐富多彩。主要的輸入設備還有掃描儀、數碼相機甚至影碟機,輸出設備有各種列印機。
中央處理單元(CPU)
CPU這三個字母是英文"Central Processing Unit"的縮寫,中文意思是"中央處理器"。CPU讀起來省事又好記,所以,很少有人說它的中文全名了。 中央處理器,顧名思義,就是"把數據收集到一起集中進行處理的器件"。CPU是一個電子元件,直接處理計算機的大部分數據,它處理數據速度的快慢直接影響著整台電腦性能的發揮,所以人們把CPU形象地比喻為電腦的心臟。 CPU的速度是用什麼來表的呢?我們常常聽人這樣說:"這個CPU的主頻是166兆赫茲。"CPU有主頻、倍頻、外頻三個重要參數,它們的關系是:主頻=外頻×倍頻,主頻是CPU內部的工作頻率,外頻是系統匯流排的工作頻率,倍頻是它們相差的倍數。CPU的運行速度通常用主頻表示,以赫茲(Hz)作為計量單位。兆是10的6次方,"兆赫茲"寫作"MHz"。CPU的工作頻率越高,速度就越快,性能就越好,價格也就越高。目前的CPU最高工作頻率已達到1500MHz以上。
計算機之所以能夠在二十幾年中在全世界迅速普及,主要原因是它功能的強大、操作的簡便化和價格的直線下降。而計算機功能的每一次翻天覆地的變化都是由於CPU功能的大幅度改進。我們常說的286、386、486到今天的586、Pentium Ⅱ都是CPU的型號。CPU的主要生產廠商Intel公司用"80X86"系列作為自己生產的CPU名稱,例如,486就是80486的簡稱。 90年代以後,由於其他CPU廠家的CPU型號也是用486、586來表示的,這就使很多人誤以為凡是標明為486、586的CPU都是Intel公司的產品。為了與其他廠家區別開來,Intel 公司將自己的586改名為"Pentium",中文譯為"奔騰"。近年來,Intel公司又相繼推出了Pentium MMX和Pentium Ⅱ。CPU每一次技術的革新,都帶來相應的名稱變化和計算機速度的大幅度提高。 目前,著名的CPU生產廠家除了Intel公司外,還有AMD公司、Cyrix公司等,他們的CPU性能也不錯,同等檔次的產品價格較Intel公司的低一些。
內存與硬碟
您可能經常聽別人說,某台電腦的內存不夠了,硬碟太小了之類的話。這里的"不夠"、"太小"都指的是它們的容量,而不是他們的數量或幾何形狀的大小。內存和硬碟都是計算機用來存儲數據的,它們的單位就是我們剛剛談過的"Bytes"。 那麼,為什麼一個叫內存,一個叫硬碟呢?我們知道,計算機處理的數據量是極為龐大的,就好比一個人在堆滿了穀物的倉庫里打穀子,那怎麼施展得開,工作效率又怎會高呢?於是,人們把穀子堆在倉庫中,自己拿了一部分穀子到場院中去打,打完了再送回去。這下子,可沒什麼礙事的東西了,打穀子的速度快多了,內效率提高了。計算機也是這樣解決了同類的問題。它把大量有待處理和暫時不用的數據都存放在硬碟中,只是把需要立即處理的數據調到內存中,處理完畢立即送回硬碟,再調出下一部分數據。硬碟就是計算機的大倉庫,內存就是它幹活的場院。 內存簡稱RAM,是英文Random Accessmemory的縮寫。在個人計算機中,內存分為靜態內存(SRAM)和動態內存(DRAM)兩種,靜態內存的讀寫速度比動態內存要快。目前市面上的內存條以"MB"為單位,比如32MB的和64MB的內存條。硬碟容量要比內存大得多,現在以"GB"為單位已屬常見。當然了,內存和硬碟容量都是越大越好。可是容量越大,價錢就越高。重要的是,我們要選購夠用而又不造成浪費的內存條和硬碟。如圖-5所示為一塊硬碟。
驅動器
要想了解軟盤和光碟中的信息,就必須把他們分別插入到軟盤驅動器和光碟驅動器中,供計算機對上面的數據信息進行識別和處理。軟盤驅動器和光碟驅動器都位於機箱中,只把它們的"嘴巴"露在外面,隨時准備"吃進"軟盤和光碟。至於硬碟,由於它是不可移動的,所以被固定於驅動器之中,也就是說,硬碟和硬碟驅動器是一體的。將軟盤插入軟盤驅動器時要注意方向,3.5吋盤在插入時應該使轉軸面向下,金屬片朝前,聽到驅動器口下方的彈出按鈕"喀噠"一聲彈出,說明軟盤插好了。取出時,應該先按一下彈出按鈕,軟盤會自動彈出一部分,接著將軟盤抽出。現在,使用5.25吋盤的人越來越少,計算機上已很少安裝5.25吋軟盤驅動器。 值得注意的是,軟盤驅動器的上方或下方有一個小小的指示燈,當指示燈亮時,說明計算機正在讀或寫這個驅動器內的軟盤,硬碟驅動器的指示燈也位於主機箱前面板上,指示燈亮時,表明計算機正在讀或寫硬碟。驅動器指示燈亮時,不能取出相應驅動器內的軟盤或關機,否則可能會對磁碟造成損壞。 一台計算機可能有不止一個軟、硬碟驅動器,怎樣區別它們呢?我們採取給驅動器取名字的辦法。驅動器的名字都是用單個的英文字母表示的,用A和B來表示軟盤驅動器,用C、D、E來表示硬碟驅動器,光碟驅動器一般用字母H來表示。這樣,就有了我們常說的"A驅、B驅、C驅、D驅",每台計算機一般只有一個光碟驅動器,所以經常簡稱之為"光碟機"。
計算機之所以能夠具有如此強大的數據處理能力,是因為主機箱內的重要部件忠實的各司其職。想認識一下這些功臣嗎?用螺絲刀擰下機箱殼上的螺絲,輕輕的取下機箱殼,就可以看見計算機的廬山真面目了。 如下圖所示,機箱中有一塊電源、一個硬碟驅動器、一個光碟驅動器、一個軟盤驅動器、一塊插滿了電子元件的電路板--主板及帶狀的導
線,叫做數據線。下面我們一一介紹它們的作用。
計算機電源 如圖-9所示為計算機電源。計算機內部所需電壓不超過12V,而市電電壓是220V。計算機電源相當於一個變壓器,把220V電壓轉化為計算機內硬體設備所需的電壓,並向各部件供電。電源上有一束各種顏色帶介面的導線,它們用來與主板、軟碟機、光碟機、硬碟、CPU風扇等部件的電源介面相連,給它們供電。
電源插座 計算機需要電才能運作。計算機機箱里有一個電源,電源上有很多導線及介面。計算機電源是給主機箱中的各個硬體設備供電的。導線及介面要分別接到主板、硬碟、光碟機、軟碟機的電源插座上。
系統主存插槽與內存條 上文說過,內存是計算機幹活的"場院",是它處理數據的地方。那麼內存以何種形式存在呢? 在主板上,有專門用來安插內存條的插槽,叫做"系統主存插槽"。大部分Socket 7架構主板提供72線(白色)和168線(黑色)的內存插槽。72線插槽叫做DRAM插槽,用來插DRAM內存條;168線插槽叫做SDRAM插槽,用來插SDRAM內存條。而Slot 1架構主板上只提供168線的黑色SDRAM插槽。 通常,DRAM內存條又稱作SIMM,SDRAM內存條又稱做DIMM。按容量大小內存條可分為8MB、16MB、32MB、64MB等種類。您可以根據自己主板上的內存插槽類型和個數酌情增插SIMM或DIMM擴充計算機內存。
擴展槽與擴展匯流排 擴展槽為個人電腦提供了功能擴展的介面。它可以連接音效卡、顯卡等設備,並把它們的信號傳給主板電路,同時,將主板的信號傳遞給外部設備。擴展槽成了主板與外界交流的橋梁, 使個人電腦的用途得以擴展。擴展槽的介面有ISA、PCI、AGP三種。ISA介面用處不大,但仍不可缺少;PCI介面用途較廣;AGP是新興的3D圖形加速埠。PCI擴展槽為白色,AGP和ISA擴展槽一般為黑色。 如圖1-12所示為PCI擴展槽。 圖1-11 PCI擴展槽 匯流排是主板與插到它上面的板卡的數據流通通道。有了匯流排,各板卡才能與主板建立聯系,供計算機使用。擴展槽口中的金屬線就是擴展匯流排,板卡插到擴展槽中時,其管腳的金屬線與槽口的擴展匯流排相接觸,就達到了信號互遞的作用。擴展槽有ISA、PCI、AGP三種類型,相應的擴展匯流排也分為ISA、PCI和AGP三種類型。
RAM、ROM是什麼?它們的特點是什麼?區別是什麼?
簡單地說,在計算機中,RAM 、ROM都是數據存儲器。RAM 是隨機存取存儲器,它的特點是易揮發性,即掉電失憶。ROM 通常指固化存儲器(一次寫入,反復讀取),它的特點與RAM 相反。ROM又分一次性固化、光擦除和電擦除重寫兩種類型。
RAM(Random Access Memory)的全名為隨機存取記憶體,它相當於PC機上的移動存儲,用來存儲和保存數據的。它在任何時候都可以讀寫,RAM通常是作為操作系統或其他正在運行程序的臨時存儲介質(可稱作系統內存)。
不過,當電源關閉時RAM不能保留數據,如果需要保存數據,就必須把它們寫入到一個長期的存儲器中(例如硬碟)。正因為如此,有時也將RAM稱作「可變存儲器」。RAM內存可以進一步分為靜態RAM(SRAM)和動態內存(DRAM)兩大類。DRAM由於具有較低的單位容量價格,所以被大量的採用作為系統的主記憶。
RAM和ROM相比,兩者的最大區別是RAM在斷電以後保存在上面的數據會自動消失,而ROM就不會。4~8M的RAM對於一般應用程序的運行已經足夠,如果追求多媒體功能,64M的RAM容量也只能夠算是基本要求。
ROM(Read Only Memory)的全名為唯讀記憶體,它相當於PC機上的硬碟,用來存儲和保存數據。ROM數據不能隨意更新,但是在任何時候都可以讀取。即使是斷電,ROM也能夠保留數據。但是資料一但寫入後只能用特殊方法或根本無法更改,因此ROM常在嵌入式系統中擔任存放作業系統的用途。現在市面上主流的PDA的ROM大小是64MB以及128MB。
RAM和ROM相比,兩者的最大區別是RAM在斷電以後保存在上面的數據會自動消失,而ROM就不會。
電子計算機系統包括什麼?
計算機系統是能按照人的要求接受和存儲信息,自動進行數據處理和計算,並輸出結果信息的機器系統。計算機系統由兩大部分組成:硬體(子)系統和軟體(子)系統,其中硬體子系統是系統賴以工作的實體,它是有關的各種物理部件的有機的結合。軟體子系統由各種程序以及程序所處理的數據組成,這些程序的主要作用是協調各個硬體部件,使整個計算機系統能夠按照指定的要求進行工作。
硬體子系統包括中央處理器、主存存儲器、輸人輸出控制系統和各種外圍設備。
軟體子系統包括 系統軟體 、支援軟體 、應用軟體 三個部分。
計算機軟體(Computer Software,也稱軟體,軟體)是指計算機系統中的程序及其文檔。程序是計算任務的處理對象和處理規則的描述;文檔是為了便於了解程序所需的闡明性資料。程序必須裝入機器內部才能工作,文檔一般是給人看的,不一定裝入機器。
軟體是用戶與硬體之間的介面界面。用戶主要是通過軟體與計算機進行交流。軟體是計算機系統設計的重要依據。為了方便用戶,為了使計算機系統具有較高的總體效用,在設計計算機系統時,必須通盤考慮軟體與硬體的結合,以及用戶的要求和軟體的要求。
軟體(中國大陸及香港用語,台灣作軟體)是一系列按照特定順序組織的計算機數據和指令的集合。一般來講軟體被劃分為系統軟體、應用軟體和介於這兩者之間的中間件。其中系統軟體為計算機使用提供最基本的功能,但是並不針對某一特定應用領域。而應用軟體則恰好相反,不同的應用軟體根據用戶和所服務的領域提供不同的功能。
軟體並不只是包括可以在計算機上運行的程序,與這些程序相關的文件一般也被認為是軟體的一部分。簡單的說軟體就是程序加文檔的集合體。
軟體被應用於世界的各個領域,對人們的生活和工作都產生了深遠的影響。
軟體的正確含義應該是:
(1)運行時,能夠提供所要求功能和性能的指令或計算機程序集合。
(2)程序能夠滿意地處理信息的數據結構。
(3)描述程序功能需求以及程序如何操作和使用所要求的文檔。
軟體具有與硬體不同的特點:
(1)表現形式不同
硬體有形,有色,有味,看得見,摸得著,聞得到。而軟體無形,無色,無味,看不見,摸不著,聞不到。軟體大多存在人們的腦袋裡或紙面上,它的正確與否,是好是壞,一直要到程序在機器上運行才能知道。這就給設計、生產和管理帶來許多困難。
(2)生產方式不同
軟體是開發,是人的智力的高度發揮,不是傳統意義上的硬體製造。盡管軟體開發與硬體製造之間有許多共同點,但這兩種活動是根本不同的。
(3)要求不同
硬體產品允許有誤差,而軟體產品卻不允許有誤差。
(4)維護不同
硬體是要用舊用壞的,在理論上,軟體是不會用舊用壞的,但在實際上,軟體也會變舊變壞。因為在軟體的整個生存期中,一直處於改變(維護)狀態。
系統軟體
系統軟體是負責管理計算機系統中各種獨立的硬體,使得它們可以協調工作。系統軟體使得計算機使用者和其他軟體將計算機當作一個整體而不需要顧及到底層每個硬體是如何工作的。
一般來講,系統軟體包括操作系統和一系列基本的工具(比如編譯器,資料庫管理,存儲器格式化,文件系統管理,用戶身份驗證,驅動管理,網路連接等方面的工具)。
應用軟體
應用軟體是為了某種特定的用途而被開發的軟體。它可以是一個特定的程序,比如一個圖像瀏覽器。也可以是一組功能聯系緊密,可以互相協作的程序的集合,比如微軟的Office軟體。也可以是一個由眾多獨立程序組成的龐大的軟體系統,比如資料庫管理系統
較常見的有:
文字處理軟體 如WPS、Word等
信息管理軟體
輔助設計軟體 如AutoCAD
實時控制軟體
教育與娛樂軟體
按操作系統分類
BeOS
DOS
Linux
Mac OS
Unix
Windows
軟體開發
軟體開發是根據用戶要求建造出軟體系統或者系統中的軟體部分的過程。軟體開發是一項包括需求捕捉,需求分析,設計,實現和測試的系統工程。
軟體一般是用某種程序設計語言來實現的。通常採用軟體開發工具可以進行開發
軟體許可
不同的軟體一般都有對應的軟體許可,軟體的使用者必須在同意所使用軟體的許可證的情況下采能夠合法的使用軟體。從另一方面來講,某種特定軟體的許可條款也不能夠與法律相抵觸。
未經軟體版權所有者許可的軟體拷貝將會引發法律問題,一般來講,購買和使用這些盜版軟體也是違法的。
二進制與十進制如何轉換
1、常用進位計數制
(1)十進制
數碼:0、1、…… 8、9
基數:10
位權: 10i (i=……-2,-1,0,1,2,……)
逢10進1
(2)二進制
數碼:0、1
基數:2
位權: 2i (i=……-2,-1,0,1,2,……)
計算機語言包括哪些?各自特點是什麼?
雖說C語言在內存管理方面存在嚴重的缺陷,不過它還是在某些應用領域里稱王稱霸。對於那些要求最高的效率,良好的實時性,或者與操作系統內核緊密關聯的程序來說,C仍然是很好的選擇。
C良好的可移植性也為它加了分。不過現在很多其他的語言可移植性越來越好,C在這方面的優勢可能會逐漸喪失。
現有的很多程序可以產生非常棒的C代碼,比如語法分析器、GUI Builder等,這時候C語言也是有吸引力的,因為你所需要編寫的代碼只是整個程序的一小部分。
再有,我們當然應該認識道,C語言對於程序員來說具有無可替代的價值。就我這里討論的每一種語言而論,只要你發掘的足夠深,到最後你會看到它們的內核都是用純正的、可移植的C寫成的。
到了今天這個時候,我們最好把C看成是UNIX虛擬機上的高級匯編語言。
就算是其他的高級語言完全可以滿足你的工作需要,抽出時間來學習C語言也仍然有益,它能幫助你在硬體體系的層次上思考問題。
即使到了今天,最好的C語言教程仍然是1988年出版的K&R第二版The C Programming Language.
總結:C最出色的地方在於其高效和貼近機器,最糟糕的地方在它的內存管理地獄。
C++
C++最初發布於1980年代中期,當時面向對象語言被認為是解決軟體復雜性問題的銀彈。C++的面向對象特性看相去使其全面超越了C,支持者認為C++將迅速把上一代語言擠到陳列館里去。
但是歷史並非如此。究其原因,至少有一部分歸咎於C++本身。為了與C兼容,C++被迫作出了很多重大的設計妥協,結果導致語言過分華麗,過分復雜。為了與C兼容,C++並沒有採用自動內存管理的策略,從而喪失了修正C最嚴重問題的機會。
另外一部分原因,恐怕要算到面向對象身上。看起來OO並沒有很好的達成人們當年的預期。我就這個問題調研過,我發現使用OO方法導致組件之間出現很厚的粘合層,並且帶來了嚴重的可維護性問題。今天讓我們來看看開放源碼社區,你會發現C++的應用還是集中在GUI,游戲和多媒體工具包這些方面,在其他地方很少用到。要知道,面向對象也只是在這些領域被證明非常成功,而開放源碼社區的選擇,很大程度上體現了程序員的自由意志,而不是公司管理層的胡亂指揮。
也許C++實現OO的方法有問題。有證據表明C++程序在整個生命周期的開銷高於相應的C, Fortran和Ada程序。不過,究竟這是否應該歸咎與C++的OO實現上,還不清楚。
最近幾年,C++加入了很多非OO的思想,其異常思想類似Lisp,STL的出現是非常了不起的。
其實C++最根本的問題在於,它基本上只不過是另一種傳統的語言。STL中的內存管理比先前的new/delete和C的方案要好的多,但是還是沒有解決問題。對於很多應用程序而言,其OO特性並不明顯,相比與C,除了增加復雜度之外沒有獲得很多好處。
總結:C++優點在於作為編譯型語言,把效率與泛型和面向對象特性結合起來,其缺點在於過於華麗復雜,傾向於鼓勵程過分復雜的設計。
Java
Java的設計很聰明,它採用了自動內存管理,這是最大的改進,支持OO設計帶來的好處雖然不那麼突出,不過也很值得贊賞,相比C++,其OO設計規模小而且簡單 。
相對於Python而言,Java有一些明顯的失誤。有些地方設計的還是太復雜,甚至有缺陷。Java的類可見性和隱式scoping規則太復雜了。Interface機制是為了避免多繼承帶來的問題而設計的,但是要理解和使用它還是挺難。內部類和匿名類導致令人困惑的代碼。缺乏有效的析構機制,使得除了內存之外的其他資源(比如互斥量和鎖)管理起來很困難。Java的線程不可靠,其I/O機制很強大,但是讀取一個文本文件卻非常繁瑣。
Java沒有管理庫版本的機制,從而形式上重蹈了了Windows DLL地獄的覆轍。在類似應用伺服器這樣的環境里,這引起了大量的問題。
總體而言,我們可以說除了系統編程和對效率要求極高的程序之外,Java在大部分領域優於C++。經驗表明,Java程序員似乎不太容易象C++程序員那樣構造過度的OO層,不過在Java中這仍然是個嚴重問題。
Java是否優於諸如Perl, Python這樣的語言?我們還不是很清楚,很大程度上似乎跟程序規模有關。其擅長的領域基本上於Python相似,在效率上無法跟C/C++相提並論,在小規模的、大量使用模式匹配和編輯的項目里也無法匹敵Perl。在小項目里,Java顯得過分強大了。我們猜測Python更適合小項目,而Java適合大項目,不過這一點並沒有得到有力的證明。
Python
Python是一種腳本語言,可以與C緊密整合。它可以與動態載入的C庫模塊交換數據,也可以作為內嵌腳本語言而從C中調用。其語法類似C和模塊化語言的雜合,不過有一個獨一無二的特徵,就是以縮進來確定語句塊。
Python語言非常干凈,設計優雅,具有出色的模塊化特性。它提供了面向對象能力,但不強迫用戶進行面向對象設計。其類型系統提供了強大的表達能力,類似Perl,具有匿名lambda表達式,這點又讓Lisp黑客們感到親切。Python依靠Tk提供方便的GUI界面開發能力。
在所有的解釋型語言里,Python和Java最適合多名程序員以漸進方式協同開發大型項目。在很多方面,Python比Java要簡單,它非常適合與構造快速原型,這一點使得它對於Java有獨特優勢:對於那些既不很復雜,又不要求高效率的程序,Python十分合適。
Python的速度沒法跟C/C++相比,不過在今天的高速CPU上,合理地使用混合語言編程策略使得Python的上述弱點被有效地彌補。事實上,Python幾乎被認為是主流腳本語言中最慢的一個,因為它提供了動態多態性。在大量使用正則表達式的小型項目,它遜於Perl。對於微型項目而言,shell和Tcl可能更好,Python顯得太過強大了。
總結:Python最出色的地方在於,它鼓勵清晰易讀的代碼,特別適合以漸進開發的方式構造大項目。其缺陷在於效率不高,太慢,不但跟編譯語言相比慢,就是跟其他腳本語言相比也顯得慢。