對於編譯原理的見解

       今年大二的我剛剛觸及到這個知識,一開始以爲這個知識大概就是編譯器一類的,想一想以爲沒有什麼做用,軟件上都有,可是自從看了網上的資料以及老師的講解以後,我漸漸改變了個人見解。java

       在我看來,(編譯原理)是計算機專業的一門重要專業課,旨在介紹編譯程序構造的通常原理和基本方法。內容包括語言和文法、詞法分析、語法分析、語法制導翻譯、中間代碼生成、存儲管理、代碼優化和目標代碼生成。是計算機專業的設置的一門重要的學科,儘管不少人都以爲學這個其實對自身沒有什麼太大的用處,即便我起初也是這樣想的,可是這門課在理論、技術、方法上都可以對學生提供了系統而有效的訓練,有利於提升軟件人員的素質和能力。由於開始會比較的枯燥以及無味,因此可能會讓不少人都無法去學習。編譯原理及技術從本質上來說就是一個算法問題而已,固然因爲這個問題十分複雜,其解決算法也相對複雜。 咱們學的數據結構與算法分析也是講算法的,不過講的基礎算法,換句話說講的是算法導論,而編譯原理這門課程講的就是比較專一解決一種的算法了。算法

       可是這門課仍然成爲了研究生入學考試的必考內容,由此可知其重要性。數據結構

       在我看來,這門課是一門真正與代碼作鬥爭的課程,對於一個有至於追求技術的人是不容錯過的課程,並且編譯原理能夠說是一個計算機科學的縮影。你學習它更多的是去追尋程序設計語言的本質,任何東西都有着其做用及用途,可是編譯原理的學習中所獲,所思的東西足以讓你終生獲益。當本身去學習到深刻時,思考到別人思考不到的東西,作到別人作不到的東西,我以爲這就是成功。學習

       它所學來的益處我在網上所知道的:1.能夠更加容易的理解在一個語言種哪些寫法是等價的,哪些是有差別的優化

                                                    2.能夠更加客觀的比較不一樣語言的差別                                                    3.更不容易被某個特定語言的宣揚者忽悠翻譯

                                                    4.學習新的語言是效率也會更高設計

                                                    5.其實從語言a轉換到語言b是一個通用的需求,學好編譯原理處理此類需求時會更加遊刃有餘。字符串

       由上述所知,假如本身學習的是c語言,過去還不知道或者有點難以理解的原理,可能學習這個以後,就豁然開朗。它也能讓本身之後學習其餘語言更加的容易,而且能夠堅決本身的立場,可以最大程度上作好一個程序。編譯器

       因此我以爲不論是之前怎麼認爲的你,如今應該嘗試去學習學習,學好了它,不只僅可以透徹的去看待過去的一些c、java等問題,並且可以嘗試給本身作一個編譯器來給本身提供便利的打代碼環境,我以爲不學的確有些惋惜。數學

      至於怎麼去學習的問題,我以爲應該要儘量熟練的去溫習溫習過去c語言帶來的知識,而且可以對數據結構的字符串、樹以及圖有着比較熟悉的理解,還有現在學習的離散數學的對樹和圖的相關理論比較瞭解,明白彙編指令、數據在CPU和存儲器之間的交互機制的彙編語言,固然,要把這本書學習好以後,再去學習龍書才能更有效率的去深入學習它。

       畢竟沒學過,因此就知道這麼多~~~!

                                         -------來自廣州商學院的商軟二班的202帥哥天團的BOSS

相關文章
相關標籤/搜索