編譯翻譯服務(wù) |
編譯(compilation , compile) 1、利用編譯程序從源語(yǔ)言編寫(xiě)的源程序產(chǎn)生目標(biāo)程序的過(guò)程。 2、用編譯程序產(chǎn)生目標(biāo)程序的動(dòng)作。 編譯就是把高級(jí)語(yǔ)言變成計(jì)算機(jī)可以識(shí)別的2進(jìn)制語(yǔ)言,計(jì)算機(jī)只認(rèn)識(shí)1和0,編譯程序把人們熟悉的語(yǔ)言換成2進(jìn)制的。編譯程序把一個(gè)源程序翻譯成目標(biāo)程序的工作過(guò)程分為五個(gè)階段:詞法分析;語(yǔ)法分析;語(yǔ)義檢查&[font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]生成;代碼優(yōu)化;目標(biāo)代碼生成。主要是進(jìn)行詞法分析和語(yǔ)法分析,又稱(chēng)為源程序分析,分析過(guò)程中發(fā)現(xiàn)有語(yǔ)法錯(cuò)誤,給出提示信息。 (1) 詞法分析 詞法分析的任務(wù)是對(duì)由字符組成的單詞進(jìn)行處理,從左至右逐個(gè)字符地對(duì)源程序進(jìn)行掃描,產(chǎn)生一個(gè)個(gè)的單詞符號(hào),把作為字符串的源程序改造成為單詞符號(hào)串的中間程序。執(zhí)行詞法分析的程序稱(chēng)為詞法分析程序或掃描器。源程序中的單詞符號(hào)經(jīng)掃描器分析,一般產(chǎn)生二元式:?jiǎn)卧~種別;單詞自身的值。單詞種別通常用整數(shù)編碼,如果一個(gè)種別只含一個(gè)單詞符號(hào),那么對(duì)這個(gè)單詞符號(hào),種別編碼就完全代表它自身的值了。若一個(gè)種別含有許多個(gè)單詞符號(hào),那么,對(duì)于它的每個(gè)單詞符號(hào),除了給出種別編碼以外,還應(yīng)給出自身的值。詞法分析器一般來(lái)說(shuō)有兩種方法構(gòu)造:手工構(gòu)造和自動(dòng)生成。手工構(gòu)造可使用狀態(tài)圖進(jìn)行工作,自動(dòng)生成使用確定的有限自動(dòng)機(jī)來(lái)實(shí)現(xiàn)。 (2) 語(yǔ)法分析 編譯程序的語(yǔ)法分析器以單詞符號(hào)作為輸入,分析單詞符號(hào)串是否形成符合語(yǔ)法規(guī)則的語(yǔ)法單位,如表達(dá)式、賦值、循環(huán)等,最后看是否構(gòu)成一個(gè)符合要求的程序,按該語(yǔ)言使用的語(yǔ)法規(guī)則分析檢查每條語(yǔ)句是否有正確的邏輯結(jié)構(gòu),程序是最終的一個(gè)語(yǔ)法單位。編譯程序的語(yǔ)法規(guī)則可用上下文無(wú)關(guān)文法來(lái)刻畫(huà)。語(yǔ)法分析的方法分為兩種:自上而下分析法和自下而上分析法。自上而下就是從文法的開(kāi)始符號(hào)出發(fā),向下推導(dǎo),推出句子。而自下而上分析法采用的是移進(jìn)歸約法,基本思想是:用一個(gè)寄存符號(hào)的先進(jìn)后出棧,把輸入符號(hào)一個(gè)一個(gè)地移進(jìn)棧里,當(dāng)棧頂形成某個(gè)產(chǎn)生式的一個(gè)候選式時(shí),即把棧頂?shù)倪@一部分歸約成該產(chǎn)生式的左鄰符號(hào)。 (3) [font style="BACKGROUND-COLOR: #ffff00"]語(yǔ)義檢查&<FONT style="BACKGROUND-COLOR: #ffff00">中間代碼[/font]生成</FONT> [font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]是源程序的一種內(nèi)部表示,或稱(chēng)中間語(yǔ)言。[font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]的作用是可使編譯程序的結(jié)構(gòu)在邏輯上更為簡(jiǎn)單明確,特別是可使目標(biāo)代碼的優(yōu)化比較容易實(shí)現(xiàn)。[font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]即為中間語(yǔ)言程序,中間語(yǔ)言的復(fù)雜性介于源程序語(yǔ)言和機(jī)器語(yǔ)言之間。中間語(yǔ)言有多種形式,常見(jiàn)的有逆波蘭記號(hào)、四元式、三元式和樹(shù)。 (4) 代碼優(yōu)化 代碼優(yōu)化是指對(duì)程序進(jìn)行多種等價(jià)變換,使得從變換后的程序出發(fā),能生成更有效的目標(biāo)代碼。所謂等價(jià),是指不改變程序的運(yùn)行結(jié)果。所謂有效,主要指目標(biāo)代碼運(yùn)行時(shí)間較短,以及占用的存儲(chǔ)空間較小。這種變換稱(chēng)為優(yōu)化。有兩類(lèi)優(yōu)化:一類(lèi)是對(duì)語(yǔ)法分析后的[font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]進(jìn)行優(yōu)化,它不依賴(lài)于具體的計(jì)算機(jī);另一類(lèi)是在生成目標(biāo)代碼時(shí)進(jìn)行的,它在很大程度上依賴(lài)于具體的計(jì)算機(jī)。對(duì)于前一類(lèi)優(yōu)化,根據(jù)它所涉及的程序范圍可分為局部?jī)?yōu)化、循環(huán)優(yōu)化和全局優(yōu)化三個(gè)不同的級(jí)別。 (5) 目標(biāo)代碼生成 目標(biāo)代碼生成是編譯的最后一個(gè)階段。目標(biāo)代碼生成器把語(yǔ)法分析后或優(yōu)化后的[font style="BACKGROUND-COLOR: #ffff00"]中間代碼[/font]變換成目標(biāo)代碼。 (6)表格管理程序 編譯過(guò)程中源程序的各種信息被保留在種種不同的表格,編譯各階段的工作都涉及到構(gòu)造、查找、或更新有關(guān)的表格。 (7)出錯(cuò)處理程序 如果編譯過(guò)程中發(fā)現(xiàn)源程序有錯(cuò)誤,編譯程序應(yīng)報(bào)告錯(cuò)誤的性質(zhì)和錯(cuò)誤的發(fā)生的地點(diǎn),并且將錯(cuò)誤所造成的影響限制在盡可能小的范圍內(nèi),使得源程序的其余部分能繼續(xù)被編譯下去,有些編譯程序還能自動(dòng)糾正錯(cuò)誤,這些工作由錯(cuò)誤處理程序完成! |
專(zhuān)業(yè)翻譯公司
- 公司簡(jiǎn)介
- 公司概況
- 我們的歷史
- 組織結(jié)構(gòu)
- 我們的團(tuán)隊(duì)
- 聯(lián)系我們
- 我們的優(yōu)勢(shì)
- 豐富的人力資源
- 專(zhuān)業(yè)的項(xiàng)目管理
- 強(qiáng)大的技術(shù)支持
- 我們的服務(wù)
- 同傳及會(huì)議服務(wù)
- 會(huì)議同傳
- AV設(shè)備
- 會(huì)議服務(wù)
- 交替口譯
- 筆譯及后期制作
- 文檔筆譯
- DTP和印刷
- 多媒體譯制
- 語(yǔ)言培訓(xùn)
- 生活漢語(yǔ)
- 商務(wù)英語(yǔ)
- 外語(yǔ)培訓(xùn)
- 網(wǎng)站本土化
- 我們的服務(wù)范疇
- 翻譯語(yǔ)種
- 專(zhuān)業(yè)領(lǐng)域
- 口語(yǔ)陪同翻譯
- 疑問(wèn)解答
- 影音翻譯
- 翻譯服務(wù)報(bào)價(jià)
- 翻譯流程
- 資料翻譯
- 筆譯及配套服務(wù)
- 證件翻譯
- 質(zhì)控體系
- 保密制度
- 翻譯體系
- 語(yǔ)言辨識(shí)
- 特色服務(wù)
- 各國(guó)語(yǔ)言
- 我們的分支機(jī)構(gòu)
- 新譯通翻譯(上海)公司
- 新譯通翻譯(北京)公司
- 新譯通翻譯(廣州)公司
- 新譯通翻譯(深圳)公司
- 新譯通翻譯(蘇州)公司
- 新譯通翻譯(杭州)公司
- 新譯通翻譯(南京)公司
- 新譯通翻譯(重慶)公司
- 新譯通翻譯(成都)公司
- 新譯通翻譯(青島)公司