編譯原理計算機領域
A. 學好「計算機編譯原理」需要具備其他一些知識么
1.你要學到什麼水平?是想考試考好還是想實際寫出來一個足夠強度的編譯器?如果是前者,就一句:努力當學霸才是你唯一的出路。
2.對於scanner &parser的話,對於書上所講的演算法的要求是很高的,有很大的依賴性,所以必須理解透徹,即使沒有機會實現也要自己動手畫畫。同時這也是本科階段所學的編譯原理的所有內容。雖然flex和bison很好使,但是強烈不建議使用。
3.對於生成器、連接器或者解釋器的話,那麼你要了解匯編語言、微處理器、微機介面等計算機基礎學科。簡單的說就是從底層學到高級語言的層面。這個要求是很高的,畢竟涉及到二進制代碼優化等很麻煩的。
B. 計算機專業的前途方向
計算機專業來講,C語言的重要程度已經無法用語言形容,如果想在計算機領域內有所發展,學C語言是必須的。但是光是C語言還不夠。計算機專業重要的課程還包括:數據結構、演算法、計算機組成原理、編譯原理、資料庫原理、操作系統、計算機網路,以及高等數學、線性代數、概率論。這些課程一般到大學才會開設。如果條件允許,建議你讀一個大學~
祝學業順利!
C. 編譯原理和演算法與數據結構那門課比較重要
坦白的講都很重要,但這等於沒有回答你的問題,我理解你是想問學習的先後。其實演算法和數據結構是計算機編程技術的精髓,偏重理論和抽象,是重中之重;一旦你進入計算機編程領域時,編譯原理是你實現想法的重要工具,是知其然,而後知其所以然,讓你知道機器是如何實現你的想法的,方便你更好的利用機器,讓你的想法有可行性。
D. 計算機科學與技術專業是學什麼的
計算機科學與技術是一個計算機系統與網路兼顧的計算機學科寬口徑專業,旨在培養具有良好的科學素養,具有自主學習意識和創新意識,科學型和工程型相結合的計算機專業高水平工程技術人才。學生需要學習通識類知識、學科基礎知識和專業知識。
計算機科學與技術專業需要學習的課程有電子技術、離散數學、程序設計、數據結構、操作系統、計算機組成原理、微機系統、計算機系統結構、編譯原理、計算機網路、資料庫系統、軟體工程、人工智慧、計算機圖形學、數字圖像處理、計算機通訊原理、多媒體信息處理技術、數字信號處理、計算機控制、網路計算、演算法設計與分析、信息安全、應用密碼學基礎、信息對抗、移動計算、數論與有限域基礎、人機界面設計、面向對象程序設計等。
E. 計算機專業都學些什麼
計算機專業大概可以分三個方向:
計算機科學與技術、網路工程、還有軟體工程。好多課程這三個專業都要學習。
1、計算機科學與技術高級語言程序設計(C、C++等)、匯編語言程序設計、離散數學、數據結構與演算法、計算機組成原理、編譯原理、操作系統、面向對象程序設計、計算機網路組成原理等。
2、網路工程高級語言程序設計、匯編語言程序設計、離散數學、面向對象的系統分析與程序設計、數據結構與演算法分析、微機系統與介面技術、操作系統、資料庫原理、計算機組成與原理、計算機網路、JAVA技術、編譯原理、互聯網技術、信息系統安全等。
3、軟體工程計算機組成原理、計算機網路、高級語言程序設計、匯編語言程序設計、數據結構、離散數學、軟體開發原理等。
F. 計算機專業畢業生就業方向的一些建議
計算機專業畢業生就業方向的一些建議
計算機專業畢業生的就業職業方向其實已經有了一個很清晰的方向:軟、硬、網、圖、信管、銷售這六大類基本涵蓋了計算機專業畢業生的就業去向。下面是我帶來的計算機專業畢業生就業方向的一些建議,希望對你有幫助!
軟體方向:
計算機軟體也是一個大的領域,在大學期間,我還是建議同學們,多在語言、技術、平台和工具等方面上打好基礎功底,因為語言和平台的發展日新月異,但只要學好基礎課程(如數據結構、演算法、編譯原理、計算機原理、資料庫原理等)就可以萬變不離其宗。追求時髦的學生最終只知道些招式的皮毛,而沒有內功的積累,是不可能成為真正的計算機高手的。
企業計算(Enterprise Computing)主要是指企業信息系統,如ERP軟體(企業資源規劃)、CRM軟體(客戶關系管理)、SCM軟體(供應鏈管理,即物流軟體),銀行證券軟體,財務軟體,電子商務/政務(包括各種網站),數據倉庫,數據挖掘,商務智能等企業信息管理系統。
企業計算領域對人才的需求顯然永遠是數量最大的,因為這是計算機應用最多的領域。搞這方面的好處是:
(1)人才需求量極大,從事企業計算的公司在IT企業中佔了大多數。除非在專業上一無特長,一般在這一領域總能找到工作;
(2)這方面的入門門檻相對較低(如果你的軟體功底不是很深,可考慮這一領域);
(3)這方面的大公司較多,大公司要賺大錢,所以多將精力花在企業計算業務上.如果將來想到大公司找一份相對穩定的工作,從事這方面機會要大很多。
但從事這一領域的缺點也是明顯的:
由於這方面的入門門檻相對較低,雖然這方面的人才需求量是最大的,但將來競爭對手會較多。您會發現,即使他原不是學IT專業的人,也許他突擊幾個月後,做得照樣像模像樣。特別是當您年紀漸大後,您可能會發現,後面的年輕人可能很容易追上你的水平。如果您將來到國外去工作,你可能會發現從事這領域的人更多且高手如雲。當然,若您在這一領域經過多年企業經驗,達到較高境界(如能設計軟體架構),則身價永遠是高的。
從事企業計算領域,最重要的技能型技術課程是
(1)J2EE架構與程序設計
(2)大型資料庫系統(如Oracle)
(3)基於UML的系統分析與設計。
如果說還有什麼重要的技能,還可將XML與Web Service技術包含進來,若您在這幾個領域掌握較好,則不愁找不到工作。
其中尤其以J2EE最為重要,目前J2EE已成為企業計算軟體開發的最主要平台。希望同學無論將來想從事何種方向,都應學一下J2EE課程,至少可為將來找工作備一手關鍵功夫。包括想從事嵌入式或其它領域的同學,也是很有必要學一下J2EE的,畢竟J2EE是目前最重要的平台之一,即使您將來不想從事企業計算領域,了解一下J2EE也是必要的,就像一門常識課程一樣。
其它與企業計算關系較密切的技能還包括:Dot Net架構與程序設計、軟體測試技術、軟體配置管理,該領域較高層次的技能包括數據倉庫技術、構件與中間件技術、設計模式等。像通信協議分析與網路程序設計,Unix系統管理等也屬有些關系的課程。
只一個J2EE便是博大精深的,足夠你啃下去的,鑽研下去,您會發現你還要學的相關知識還有很多(包括EJB、XML、Web Service、DesignPattern等)。
雖然從事企業計算的人才很多,但以下企業計算領域無論國內外都屬稀缺人才:
(1)掌握大型ERP系統,主要是SAP系統,包括SAP Basis(系統管理)或SAP ABAP(編程)或SAP功能模塊實施(特別是財務模塊FI的實施)。其它大型ERP系統,掌握 PeopleSoft、Oracle Finacial、J.D.Edward、Siebel等大型ERP軟體系統的人也很值錢。一般500強公司絕不會像國內很多企業那樣,用J2EE從頭設計企業的 ERP系統(即將是怎樣的人力投入,而且設計出來的系統怎麼可能是完善的?),一定都會使用SAP這樣成熟的ERP軟體。用不起SAP的公司可能會用 J2EE設計ERP系統。
(2)掌握IBM大型機技術的人,如S/390主機,MVS操作系統,JCL作業控制語言,COBOL程序設計語言,DB2關系資料庫或IMS層次資料庫,CISC中間件交易控制系統等IBM大型機專用技術。國內五大銀行,以及國外絕大多數銀行的後台系統使用的都是以上平台。
(3)其它如掌握數據倉庫技術的人在國內也很少. 目前最主流的數據倉庫平台應是ORACLE的數據倉庫工具. 在國外,會一些特殊數據倉庫的人,如NCR/TEREDATA的人非常難找.
嵌入式系統無疑是當前最熱門最有發展前途的IT應用領域之一。嵌入式系統用在一些特定專用設備上,通常這些設備的硬體資源(如處理器、存儲器等)非常有限,並且對成本很敏感,有時對實時響應要求很高等。特別是隨著消費家電的智能化,嵌入式更顯重要。像我們平常常見到的手機、PDA、電子字典、可視電話、 VCD/DVD/MP3 Player、數字相機(DC)、數字攝像機(DV)、U-Disk、機頂盒(Set Top Box)、高清電
視(HDTV)、游戲機、智能玩具、交換機、路由器、數控設備或儀表、汽車電子、家電控制系統、醫療儀器、航天航空設備等等都是典型的嵌入式系統。
主要從事嵌入式操作系統和應用軟體的開發。如果我們學軟體的人對硬體原理和介面有較好的掌握,我們完全也可寫BSP和硬體驅動程序。嵌入式硬體設計完後,各種功能就全靠軟體來實現了,嵌入式設備的增值很大程度上取決於嵌入式軟體,這佔了嵌入式系統的最主要工作(目前有很多公司將硬體設計包給了專門的硬體公司,稍復雜的硬體都交給台灣或國外公司設計,國內的硬體設計力量很弱,很多嵌入式公司自己只負責開發軟體,因為公司都知道,嵌入式產品的差異很大程度在軟體上,在軟體方面是最有"花頭"可做的),所以我們搞軟體的人完全不用擔心我們在嵌入式市場上的用武之地,越是智能設備越是復雜系統,軟體越起關鍵作用,而且這是目前的趨勢。
游戲軟體程序設計大致分成以下幾類:
(1) PC類游戲,包括單機和網游。這類游戲開發平台基本上都是基於VC++和DitrectX(如DrectShow,DirectDraw,D3D等, DirectX資料可直接到MS網站上查)。DirectX和OpenGL是兩個主要的圖形標准,OpenGL跨平台(Unix/Windows上都可跑),盡管很多搞研究的人對OpenGL贊不絕口,將DirectX罵得一文不值,但事實是,在Windows平台上,DirectX是最快最方便的,所以在Windows平台上的游戲還是DirectX當家。
(2) 手機游戲:目前手機游戲主要開發平台有兩類:
第一類手機游戲是J2ME平台(Java 2 Micro Edition),J2ME本是為嵌入式平台設計的Java,但由於Java生來就需要Java虛擬機(JVM)來解釋,所以在嵌入式產品很少用J2ME (太慢太耗內存)。
另一類手機游戲是BREW平台,BREW是美國高通公司(Qualcomm,CDMA核心技術都是該公司開發的,有無數移動通信技術專利)發明的,據說可編譯成二進制代碼,那當然快了。主要的開發語言是C/C++。但迫於被指責為較封閉的壓力,目前Qualcomm已推出BREW平台上的J2ME虛擬機(但可想像那將是怎樣慢的速度)。Qualcomm搞定了很多手機製造商簽定BREW授權許可協議,最狠的是Qualcomm與中國聯通綁在一起大堆基於
BREW的手機游戲,所以有些公司招聘時要求掌握BREW也就不奇怪了。
(3)專用游戲機:如電視游戲,XBOX等。
游戲公司對人才的需求主要是以下技術:
(1)計算機圖形學,特別是3D編程與演算法,包括DirectX或OpenGL。開發平台是VC++/DIRECTX或KJAVA。
(2)公司說,手機游戲因手機資源有限,必須對圖像進行壓縮,所以若有一些圖像壓縮演算法知識比較好。像若能有MPEG壓縮演算法較好,手機上採用的是比MPEG壓縮得更狠的一些特殊演算法,但觸類旁通。
(3) TCP/IP Socket編程是搞網游開發的人必須掌握的。
(4) 人工智慧知識:復雜游戲可能需要一些AI演算法。
(5) 網路與信息安全知識:網游要防外掛。
硬體方向:
計算機硬體就業的“半壁江山”大概已經被電子技術、電子信息工程、機械電子等專業的畢業生占據,計算機專業已經不再具備很大的優勢。這里不再多說。
嵌入式系統是軟硬結合的東西,搞硬體設計,有時要開發一些與硬體關系最密切的最底層軟體,如BootLoader、 Board Support Package(像PC的BIOS一樣,往下驅動硬體,往上支持操作系統),最初級的硬體驅動程序等。他們的'優勢是對硬體原理非常清楚,不足是他們更擅長定義各種硬體介面,但對復雜軟體系統往往力不從心(例如嵌入式操作系統原理和復雜應用軟體等)。
網路方向:
網路方向的畢業生就業可在各類企事業單位、計算機軟體公司等行業從事計算機網路系統的規劃和組網、網路系統的管理和維護、各類網站的建設與管理、網頁製作、網路應用軟體的開發以及計算機網路相關軟硬體的營銷工作及技術支持等工作。可到集成公司、運營商、網路安全廠商、企業、政府機構、學校等用人單位從事網路安全系統的維護、管理以及其他售前、售中、售後工作。可以成為網路管理員、網路工程師、網頁設計師等。網路方向的畢業生應該能夠熟練的掌握網頁設計與製作,精通JSP網站建設,NET網站建設,熟練使用J2EE框架(Struts、spring、Hibernate)進行網站建設。熟練掌握搜索引擎優化(SEO)、SQL Server2000資料庫應用、ASP.NET2005網站高級製作、Oracle資料庫應用、網路伺服器搭建與安全配置、軟體工程、C#2.0編程、Lunix操作系統。可從事JSP、J2EE企業建設、WEB程序員、網站維護管理、C#相關技術行業、.NET應用開發以及JAVA相關技術行業。同時,掌握各類網路設備的工作原理,常用網路設備的安裝、調試技能,迅速解決網路設備故障,能熟練操作網路系統及組網、維護、管理技術,具備制定網路工程方案,工作在生產、經營、管理和技術服務領域的高級技術應用性人才。
還有一些相關的就業崗位:(1)、網路通訊與網路系統的安裝、調試。(2)、網站建設與網頁製作設計。(3)、電子商務平台的承建、管理維護。(4)、計算機網路軟體的應用與開發。(5)、資料庫開發與管理。
(6)、網路辦公自動化。(7)、計算機系統管理與維護。熟練掌握多個操作系統的小型網路的搭建和配置;熟悉網路安全問題,能夠用一定手段保證網路安全;會架設企業級的網路伺服器,並保證伺服器的運行;熟悉資料庫和網頁編程,可以進行簡單的網頁開發;熟練掌握腳本,可以進行自動化的高級的系統維護和管理;不僅要具有網路編程能力,而且側重於計算機網路的組建、管理、維護和應用能力。
計算機圖形圖像設計方向:
也就是常說的計算機多媒體技術(網頁設計與互聯網編輯方向)設計部分,基本應該掌握的技術:
1、Phtoshop:圖像處理軟體學習選區的應用與編輯,通道的運用,圖層的綜合運用,各種濾鏡的使用,特效字的製作,圖像輸出與優化等,靈活運用圖層樣式,流體變形製作出千變萬化的圖像特效。各種色彩模式的應用,圖像的輸入與優化蘋果機的操作系統。
2、Dreamweaver:中文版概述與入門,窗口參數設置,創建網頁基本對象及設置WEB站點。頁面設置使用文本,使用圖像,在文檔中插入水平線,網頁中的表格設置,使用表單,使用框架,層和樣式表,使用行為模板,庫和命令,SQL語言,記錄集的創建。
3、Flash:中文版概述,簡單繪圖技術,FLASH繪圖基礎,理解圖層,使用繪圖工具,使用時間軸,上機實例“春暖花開”,處理繪制的對象,設透明度,創簡單動態,創特動態,使用元件和庫,ACTION SCRIPT入門,動畫的調試,MTV-“花火製作”大量精典動畫實例講解,講解變形,運動動畫,遮罩動畫,導向動畫,音響動畫,加上獨特的創意可以製作多媒體網頁動畫,動作短片等。
4、Fireworks:中文版概述,入門,常用圖形操作,矢量圖形,點陣圖編輯,文本處理,動態效果,使用內置效果,形狀和元件,使用實例和熱點切片設置創建菜單,優化和導出作品,導出向導,網頁圖形製作,圖象優化,設計經驗與製作技巧,可以對圖像色版,文件大小設置,並可將圖像分割以加快網上下載的速度,使圖像和圖形以最簡潔的方式在網頁上淋漓盡致地體現其魅力,還能處理點陣圖和矢量圖形等。
5、HTML基本語法及與網頁軟體的完美結合。
6、ASP: Active Server pages(ASP)動態網頁設計,網頁與資料庫的鏈接,SQL語言通過ASP動態網頁編輯,修改網路資料庫。構造功能強大的Web應用程序等深入講解html語言,asp內部對象的講解,asp和前台開發軟體的連接VBscript/JAVAscript腳本編程。
畢業生應具有一定的計算機和網路技術基本理論知識, 掌握互聯網站內容建設、網站推廣技能、網頁藝術設計製作、視音頻多媒體製作、FLASH動畫製作、網站界面藝術設計和欄目編輯能力,從事各種網頁設計和網路編輯工作的高級技能型應用人才。可從事網路編輯員、網站推廣、網頁(靜態)設計、網站美工、平面廣告設計員等工作。
信息管理方向:
因為現在本科有一個專業就是叫做信息管理與信息系統,所以在此不多說了,等到時候介紹該專業的時候再具體強調。但是有一點,其實信息管理與信息系統,如果想的簡單一些,或者對於學習計算機科學與技術的畢業生來說,你已經具備了信息管理的相應知識。你能熟練使用辦公軟體,如office,excel等等,會一點編程,你最起碼可以做一個辦公白領,如果氣質好可以當高級秘書之類。
;G. 計算機編譯原理什麼是NFA
ε只能出現在NFA中,當然不是為了方便直觀,而是連通NFA和DFA的橋梁。編譯原理講授的不是如何繪制NFA或者DFA,二是告訴讀者怎樣能夠自動實現NFA或DFA的構造。在實際應用中ε可以幫助計算機轉換NFA為DFA,而在屬性文法和語法制導階段,它也是溝通綜合屬性與繼承屬性、執行語義動作不可或缺的一部分。另外ε的使用可以大大簡化文法產生式的構造難度。我記得最初使用ε是為了使得文法體系(字母表)更加完善,但是在實際應用中卻變得應用廣泛(此觀點不一定正確)。最後想說的是,在編譯中,ε也帶來了不小的麻煩,否則也就不會有諸如「去空產生式」這樣的演算法了:)
H. 軟體工程 計算機科學與技術
北航計算機科學與技術在全國排名第三,軟體學院是從計算機學院分出去的。總體來說,計算機科學與技術學習的課程更全面,從基本的語言到資料庫、編譯原理、操作系統等都會涉及,還會學習一大堆基礎課。而且連續兩任的校長李未懷進鵬都是計算機學院的,所以計算機學院不差錢。而軟體學院主要側重軟體方面,基本上按程序員培養的,所以要想進一步發展就難了。計算機學院每年學費5500,軟體學院大一大二每年5500,後兩年16000.所以每年計算機學院的分要比軟體學院高很多。順便說一下,北航計算機主要強在軟體方面,硬體方面貌似不行。北郵最好的是通信工程,北理工主要強在武器方面,北京工業大學跟上面幾所高校不是一個檔次上的,所以就不說了。最後祝你在高考中取得好成績,實現自己的願望。
I. 大學本科里關於計算機的專業有哪些
現在很多新的專業都算是交叉學科~計算機或多或少都會涉及到一些的~你要是說是那種傳統的那幾個計算機專業的話~就是計算機科學與技術,計算機應用,網路工程,信息安全這些都算是偏向軟體的~(但也不是絕對的,要看你們學校這個專業的側重點是什麼,但通常情況是這樣的)你要是說硬體的話,就是電子信息科學與技術,電子信息工程,還有新出來的光電子科學與技術。另外信息對抗跟通信實際上都是無線電的~但有些學校把他們算進計算機學院里。你要是認准了硬體的話,就去學電子信息工程吧~實用性比較強,工作現在看來比較好找,但是計算機底層的東西都不是很好學的~
J. 計算機科學與技術是學什麼的
計算機科學與技術主要課程:
電路原理、模擬電子技術、數字邏輯、數值分析、計算機原理、微型計算機技術、計算機系統結構、計算機網路、高級語言、匯編語言、數據結構、操作系統、資料庫原理、編譯原理、圖形學、人工智慧等。
計算機科學與技術專業就業方向:
該專業畢業生能夠在網路通信類科研院所、政府機構、銀行、電力企業、計算機網路公司、通信公司等各類企事業單位從事計算機網路的科學研究、系統設計、系統防護、系統管理與維護和應用計算機科學與技術學科的系統開發、設計和系統集成等工作。