欧美xxxx做受欧美1314,免费人成视频在线播放,卡一卡2卡3卡精品网站,欧美成人看片黄a免费看,久久香蕉国产线看观看猫咪av

COMP7402/4403信息技術(shù)與電氣工程學(xué)院編譯器和解釋器研究生輔導(dǎo)

發(fā)布時間: 2023-04-23 10:07:53
文章來源: 考而思
摘要:
編譯器是一個實質(zhì)性的程序,開發(fā)這種工具需要COMP7505中講授的軟件工程技術(shù)及其先決條件(特別是CSSE2002)。本課程中的作業(yè)涉及修改相當(dāng)大的復(fù)雜軟件,并且需要良好的編程技能。具備豐富的編程經(jīng)驗,尤其是Java經(jīng)驗。

  COMP7402-編譯器和解釋器

  1.一般課程信息

  UQ學(xué)生:請從Learn.UQ或mySI-net訪問個人資料,以訪問此個人資料中保存的所有課程參與者詳細(xì)信息。

  1.1課程詳情

  課程編號: COMP7402

  課程名稱:編譯器和口譯員

  協(xié)調(diào)單位:信息技術(shù)與電氣工程程學(xué)院

  學(xué)期: 2020年第1學(xué)期

  模式:內(nèi)部

  級別:研究生課程

  地點:圣盧西亞

  臺數(shù): 2

  每周聯(lián)系時間: 3L1T

  前提條件: COMP7505

  推薦的前提條件: CSSE7035或CSSE7201

  不兼容: COMP3401或COMP4403或CS320或CS324

COMP7402編譯器和解釋器研究生

  課程簡介:編譯器模塊;編程語言規(guī)范;詞法分析,解析-遞歸下降和表驅(qū)動;靜態(tài)語義-符號表和類型檢查;錯誤處理;代碼生成和優(yōu)化介紹;編譯器生成器;口譯員。

  假設(shè)背景:

  先決條件:COMP7505

  編譯器是一個實質(zhì)性的程序,開發(fā)這種工具需要COMP7505中講授的軟件工程技術(shù)及其先決條件(特別是CSSE2002)。本課程中的作業(yè)涉及修改相當(dāng)大的復(fù)雜軟件,并且需要良好的編程技能。具備豐富的編程經(jīng)驗,尤其是Java經(jīng)驗。

  需要了解數(shù)據(jù)結(jié)構(gòu)的知識,才能理解用于語言處理器中內(nèi)部結(jié)構(gòu)(例如符號表和抽象語法樹)的適當(dāng)數(shù)據(jù)結(jié)構(gòu)。從COMP7505先決條件中可以獲取一些有關(guān)如何在計算機級別實現(xiàn)基本數(shù)據(jù)結(jié)構(gòu)(如數(shù)組和記錄)的知識。

  推薦的:CSSE7035 或CSSE7201

  必須具備機器語言和匯編語言編程的基本知識,才能理解編譯器的代碼生成階段。

  1.2課程簡介

  1950年代(高級)編程語言的發(fā)明是使軟件開發(fā)更易于訪問和更省時的最重要的進步之一-將機器或匯編語言的編寫程序與Java進行比較。實施編程語言是1960年代和1970年代所面臨的主要挑戰(zhàn),導(dǎo)致了現(xiàn)代編譯器以及我們在本課程中學(xué)習(xí)的理論和實踐的發(fā)展。使用編程語言而不是機器/匯編語言的一個顯著優(yōu)勢是機器獨立性。

  為了確保編程語言在不同機器上的實現(xiàn)是一致的,需要一種與機器無關(guān)的語言定義。為此,我們首先定義語言的語法(即語言中的合法字符串是什么),然后定義其語義(或含義)。語言的語法是通過根據(jù)基本符號(例如關(guān)鍵字,標(biāo)識符和運算符)編寫的語法來定義的,這些符號被稱為詞匯標(biāo)記,而標(biāo)記則是根據(jù)字符串上的正則表達(dá)式定義的。并不是語法允許的所有字符串都是該語言中的有效程序,因為例如,不能在單個范圍內(nèi)對標(biāo)識符進行多重定義,并且表達(dá)式的上下文類型必須正確。我們使用一組類型檢查規(guī)則來定義格式正確的程序。

  編程語言由編譯器或解釋器實現(xiàn)。它們本身都是(相當(dāng)復(fù)雜的)程序。甲編譯工具通過翻譯一個高級程序編程語言(例如,Java程序簡單地表示為一個文本文件(它本身表示為字符(其由位表示))的流)到一個機器級程序(以機器指令的序列表示(例如,x86機器指令(本身以位表示)))。[此外:在本課程中,您必須能夠處理很多嵌套。]

  編譯器執(zhí)行的任務(wù)可以分為以下幾類。

  識別輸入程序并通過檢測程序中的語法錯誤

  詞法分析:識別語言的基本符號(或詞法標(biāo)記),以及

  解析:識別由這些基本符號組成的程序的結(jié)構(gòu)。

  從以下方面構(gòu)造程序的抽象內(nèi)部表示形式:

  一個抽象語法樹,并

  一個符號表。

  根據(jù)程序的靜態(tài)語義檢查程序的格式,例如,檢查賦值語句是否類型正確。

  生成代碼,可以包括將程序的表示形式更改為更適合代碼生成和代碼優(yōu)化的形式(源代碼級別的計算機獨立于目標(biāo)機器代碼級別的計算機)。然后可以在目標(biāo)機器上執(zhí)行生成的機器代碼。由于課程中的時間限制,我們沒有在代碼優(yōu)化上花費大量時間。

  解釋器是實現(xiàn)編程語言的一種更簡單(通常效率較低)的方式。在早期階段,它的作用與編譯器相同,但是沒有代碼生成階段。相反,它直接解釋程序的內(nèi)部表示。解釋器相對于編譯器的主要優(yōu)點是,它們不依賴于目標(biāo)計算機,因此比編譯器更具移植性。解釋器用于簡單的語言,例如操作系統(tǒng)命令外殼,在這些語言中,生成機器代碼的開銷超過了解釋程序的較慢執(zhí)行時間,或者在非常高級的語言(例如,功能和邏輯編程語言)中使用解釋器它們的功能如此強大,以至于解釋比編譯的執(zhí)行時間成本并不是那么重要。

  編譯器的語言識別階段對于涉及某種形式的語言的計算機的許多應(yīng)用程序是通用的。例如,網(wǎng)絡(luò)瀏覽器可以識別以超文本標(biāo)記語言(HTML)編寫的文檔,并通過在屏幕上生成文檔顯示來對其進行解釋。

  COMP7402編譯器和解釋器研究生早期的編譯器是手工制作的程序,旨在為特定的計算機實現(xiàn)特定的語言。但是,在1960年代,人們認(rèn)識到編寫編譯器的許多方面都不依賴于要編譯的特定編程語言。特別是,識別程序并創(chuàng)建程序抽象表示的早期階段主要取決于語言的語法。結(jié)果是創(chuàng)建了編譯器生成器(實際上是詞法分析器和解析器生成器)。解析器生成器是另一個程序,它接受編程語言的描述(以該語言的語法形式)并生成一個程序,該程序是該語言的解析器?,F(xiàn)代編譯器生成器通常被實現(xiàn)為協(xié)作工具套件,可從一系列符號生成編譯器組件,每種符號指定一種語言的不同方面(及其實現(xiàn))。這些活動不僅包括詞法分析和解析,還包括錯誤檢查和代碼生成。

當(dāng)前文章鏈接: http://www.mclx.com.cn/xinwendongtai/6397.html

圖片歸版權(quán)方所有,頁面圖片僅供展示。如有侵權(quán),請聯(lián)系我們刪除。凡來源標(biāo)注“考而思”均為考而思原創(chuàng)文章,版權(quán)均屬考而思教育所以,任何媒體、網(wǎng)站或個人不得轉(zhuǎn)載,否則追究法律責(zé)任。

17年深耕全階段留學(xué)輔導(dǎo)   數(shù)十萬留學(xué)生信賴

添加微信:「 kaoersi03 」備注官網(wǎng)申請試聽,享專屬套餐優(yōu)惠!

同步課件輔導(dǎo)、作業(yè)補習(xí)、論文潤色、真題講解、Appeal申訴、入學(xué)內(nèi)測/面試培訓(xùn)


添加微信【kaoersi03】(備注官網(wǎng))申請試聽,享專屬套餐優(yōu)惠!

客服微信

kaoersi03

課程聽不懂?作業(yè)不會寫?復(fù)習(xí)沒方向?專業(yè)老師為您答疑解惑

復(fù)制成功

微信號: kaoersi03

備注“官網(wǎng)”享專屬套餐優(yōu)惠!