1.3 解釋程序:
解釋程序是一種語(yǔ)言處理程序,它直接執(zhí)行源程序或源程序的內(nèi)部形式。它并不產(chǎn)生目標(biāo)程序,這是它和編譯程序的主要區(qū)別。
高級(jí)語(yǔ)言實(shí)現(xiàn)語(yǔ)言處理有4種方案:
源程序被直接解釋執(zhí)行。
先將源程序翻譯成高級(jí)中間代碼,然后再掃描和解釋執(zhí)行高級(jí)中間代碼。
先將源程序轉(zhuǎn)化成和機(jī)器代碼十分接近的低級(jí)中間代碼,再解釋執(zhí)行這種中間代碼。
源程序被最終翻譯成機(jī)器語(yǔ)言表示的目標(biāo)程序。這類系統(tǒng)的目標(biāo)程序執(zhí)行效率最高。
翻譯系統(tǒng)與解釋系統(tǒng)比較:
翻譯系統(tǒng)在執(zhí)行速度上都優(yōu)于建立在解釋執(zhí)行基礎(chǔ)上的系統(tǒng);
翻譯系統(tǒng)的缺點(diǎn)是其復(fù)雜性高,這使得它的開(kāi)發(fā)和維護(hù)費(fèi)用都大;
解釋系統(tǒng)比較簡(jiǎn)單,可移植性較好,適合于以交互方式執(zhí)行程序;
解釋系統(tǒng)缺點(diǎn)是執(zhí)行速度慢;
純粹的解釋和純粹的編譯都是極端,因此一般是兩種技術(shù)的結(jié)合,先將源程序編譯形成中間代碼,然后由解釋器解釋執(zhí)行。
解釋系統(tǒng)的結(jié)構(gòu)可分成兩個(gè)部分。
1.包括通常的詞法分析程序以及語(yǔ)法和語(yǔ)義分析程序,它的作用仍是把源程序翻譯成中間代碼,中間代碼的設(shè)計(jì)常采用逆波蘭(后綴)表示形式(符號(hào)在后面)。
2.解釋部分,用來(lái)對(duì)第一部分所產(chǎn)生的中間代碼進(jìn)行解釋執(zhí)行,完成真正的解釋。
相關(guān)推薦:推薦:2010年計(jì)算機(jī)軟件水平考試必備完美攻略北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |