什麼是IT?php
1.信息技術(英語:Information Technology,縮寫:IT)也稱信息和通訊技術(Information and Communications Technology,ICT),是主要用於管理和處理信息所採用的各類技術總稱,主要是應用計算器科學和通訊技術來設計、開發、安裝和部屬信息系統及應用軟件。python
2.在商業領域中,美國信息技術協會(ITAA)定義信息技術爲「對於以計算器爲基礎之信息系統的研究、設計、開發、應用、實現、維護或應用。」[2]。此領域相關的任務包括網絡管理、軟件開發及安裝、針對組織內信息技術生命週期的計劃及管理,包括軟硬件的維護、升級和更新。算法
IT技術的前景編程
1.物聯網 物物相連的互聯網網絡
2.豐富多彩的WEB應用數據結構
3.海量又有效率的大數據框架
4.計算與服務的分離--雲計算 (超級計算機)數據結構和算法
5.區塊鏈技術--比特幣與新人民幣編程語言
6.人工智能開啓智慧2.0時代工具
現代計算機的祖先
1.計算機的英文原詞「computer」是指從事數據計算的人。而他們每每都須要藉助某些機械計算設備或模擬計算機。例如算籌、算盤。623年德國博學家Wilhelm Schickard率先研製出了歐洲第一部計算設備,這是一個能進行六位之內數加減法,並能經過鈴聲輸出答案的「計算鍾」。使用轉動齒輪來進行操做。
2.查爾斯·巴貝奇於1820年構想和設計了第一部徹底可程序化計算機。但因爲技術條件、經費限制,以及沒法忍耐對設計不停的修補,這部計算機在他有生之年始終未能問世。約到19世紀晚期,許多後來被證實對計算機科學有着重大意義的技術相繼出現,包括打孔卡片以及真空管。德裔美籍統計學家赫爾曼·何樂禮設計了一部製表用的機器,其中便應用打孔卡片來進行大規模自動數據處理。
在20世紀前半葉,爲了迎合科學計算的須要,許多專門用途的、複雜度不斷增加的模擬計算機被研製出來。這些計算機都是用它們所針對的特定問題的機械或電子模型做爲計算基礎。1930-1940年代,計算機的性能逐漸強大而且通用性獲得提高,現代計算機的關鍵特點被不斷地加入進來。
3.1941年夏天誕生的阿塔納索夫-貝瑞計算機是世界上第一部電子計算機,它使用了真空管計算器,二進制數值,可複用內存;在英國於1943年被展現的神祕的巨像計算機(Colossus computer),儘管程序化能力極爲有限,可是它令人們確信使用真空管既值得信賴,又能實現電氣化的再編程;哈佛大學的馬克一號;以及基於二進制的ENIAC,全名爲電子數值積分計算器,這是第一部通用意圖的計算機,但因爲其結構設計不夠彈性化,致使對它的每一次再編程都要從新鏈接電子線路。
現代計算機--馮·諾依曼式計算機
存儲程序計算機在體系結構上主要特色有:
將來計算機
1.能識別天然語言的計算機
2.高速超導計算機
3.激光計算機
4.分子計算機
5.量子計算機
6.DNA計算機
計算機科學的範圍
1.計算機科學(英語:computer science,有時縮寫爲CS)是系統性研究信息與計算的理論基礎以及它們在計算機系統中如何實現(英語:implementation)與應用的實用技術的學科。它一般被形容爲對那些創造、描述以及轉換信息的算法處理的系統研究。
2.數據結構和算法:算法指定義良好的計算過程,它取一個或一組值做爲輸入,通過一系列定義好的計算過程,獲得一個或一組輸出。[24]算法是計算機科學研究的一個重要領域,也是許多其餘計算機科學技術的基礎。算法主要包括數據結構、計算幾何、圖論等。除此以外,算法還包括許多雜項,如模式匹配、部分數論等。
3.計算理論:按照Peter J. Denning的說法,計算機科學的最根本問題是「什麼可以被有效地自動化?」計算理論的研究就是專一於回答這個根本問題,關於什麼可以被計算,去實施這些計算又須要用到多少資源。爲了試圖回答第一個問題,遞歸論檢驗在多種理論計算模型中哪一個計算問題是可解的。而計算複雜性理論則被用於回答第二個問題,研究解決一個不一樣目的的計算問題的時間與空間消耗。
著名的「P=NP?」問題,千禧年大獎難題之一,是計算理論的一個開放問題。
4.信息論與編碼理論:信息論與信息量化相關,由克勞德·香農建立,用於尋找信號處理操做的根本極限,好比壓縮數據和可靠的數據存儲與通信。編碼理論是對編碼以及它們適用的特定應用性質的研究。編碼(code)被用於數據壓縮,密碼學,前向糾錯,近期也被用於網絡編碼。研究編碼的目的在於設計更高效、可靠的數據傳輸方法。
5.編程語言和編譯器和形式化方法等等
計算機系統層次與結構
1.硬件層
2.彙編層
3.操做系統層
4.虛擬機層
5.軟件應用層
操做系統
1.操做系統(英語:operating system,縮寫做 OS)是管理計算機硬件與軟件資源的計算機程序,同時也是計算機系統的內核與基石。操做系統須要處理如管理與配置內存、決定系統資源供需的優先次序、控制輸入與輸出設備、操做網絡與管理文件系統等基本事務。操做系統也提供一個讓用戶與系統交互的操做界面。
2.常見的操做系統:
DOS,MS-Windows,Unix,Linux,BSD,Android,IOS
虛擬機與彙編技術
1.彙編技術
2.虛擬機
人機交互的基本工具--程序設計語言
1.語言的定義
2.程序設計語言
3.經常使用的程序設計語言
4.程序語言的發展歷史,非結構化到結構化的躍遷
程序的概念,離散思想與所基於的數學基礎
1.程序的定義 軟件 應用
2.離散思想與數學基礎
算法與數據結構概述
前世今身
定位應用
1.數據結構
數據結構解決數據的描述問題。也就是說,任何待處理的數據對象必須先找到合適的結構去描述,而後才能在計算機系統裏處理它。在流行的高級語言中,如Java、python等都提供了很經常使用的數據結構,例如各類數據與集合框架。
2.算法
數據得以描述,目的是爲了解決問題。如何針對各類各樣的數據結構與問題規模去設計不一樣的過程解決特定的問題,這就是算法的藝術。鑑於在一個計算系統中計算資源的稀缺性,咱們要設計不一樣的算法而且加以比較,從而選取最合適問題的算法方案去提高程序的經濟性。算法如此重要,從最基本的對數據的排序問題,以及最近流行的AI技術,算法的活力從未停滯。
3.編程之禪
問題 —> 數據結構+算法 == 程序 —> 解決問題