當(dāng)前位置: 首頁(yè) > 上海網(wǎng)站建設(shè)專題

上海網(wǎng)站建設(shè)專題

網(wǎng)站建設(shè)者們要學(xué)習(xí)的瀏覽器知識(shí):關(guān)于解析與翻譯

來(lái)源: 上海網(wǎng)站建設(shè)    發(fā)布日期: 2014-02-18 16:05    點(diǎn)擊量: 4690

 

    之前有介紹關(guān)于瀏覽器的一些基礎(chǔ)知識(shí),帶大家認(rèn)識(shí)了瀏覽器的種類以及大致的工作原理,今天,為廣大初進(jìn)入網(wǎng)站建設(shè)行業(yè)的朋友聊下瀏覽器是如何解析翻譯的.解析翻譯呈現(xiàn)引擎中非常重要的一個(gè)環(huán)節(jié),因此我們要更深入地講解。

 

    解析樹(shù)或者語(yǔ)法樹(shù)

 

    解析文檔是指將文檔轉(zhuǎn)化成為有意義的結(jié)構(gòu),也就是可讓代碼理解和使用的結(jié)構(gòu)。解析得到的結(jié)果通常就代表了文檔的節(jié)點(diǎn)樹(shù),專業(yè)上稱作解析樹(shù)或者語(yǔ)法樹(shù).解析是以文檔所遵循的語(yǔ)法規(guī)則為基礎(chǔ)的.所有可以解析的格式都必須對(duì)應(yīng)相應(yīng)的語(yǔ)法(通常是詞匯與語(yǔ)法規(guī)則構(gòu)成的.

 

    詞法分析與語(yǔ)法分析

 

    詞法分析是把輸入的內(nèi)容分割成大量標(biāo)記的過(guò)程。標(biāo)記是語(yǔ)言中的詞匯,即構(gòu)成內(nèi)容的單位。,它相當(dāng)于我們?nèi)祟愓Z(yǔ)言的單詞.語(yǔ)法分析是應(yīng)用語(yǔ)言的語(yǔ)法規(guī)則的過(guò)程.解析器往往會(huì)把解析工作交給下面的兩個(gè)組件來(lái)進(jìn)行處理:詞法分析器和解析器,語(yǔ)法分析器有時(shí)候也被叫做為標(biāo)記生成器,主要把輸入內(nèi)容分解成一個(gè)個(gè)有效標(biāo)記;而解析器主要負(fù)責(zé)根據(jù)語(yǔ)言的語(yǔ)法規(guī)則分析文檔的結(jié)構(gòu),從而構(gòu)建解析樹(shù).詞法分析器知道如何將無(wú)關(guān)的字符(比如空格和換行符)分離出來(lái).網(wǎng)站制作中使用的前端的一些語(yǔ)言往往就是按照瀏覽器語(yǔ)法規(guī)則的語(yǔ)言,通俗的說(shuō)就是瀏覽器能夠看得懂的語(yǔ)言.

 

    解析與翻譯的過(guò)程

 

    解析的過(guò)程往往是一個(gè)迭代的過(guò)程。解析器會(huì)向詞法分析器請(qǐng)求一個(gè)新標(biāo)記,并會(huì)使其與某條語(yǔ)法規(guī)則進(jìn)行匹配.如果發(fā)現(xiàn)了能夠匹配,解析器會(huì)把一個(gè)對(duì)應(yīng)于該標(biāo)記的節(jié)點(diǎn)添加到解析樹(shù)中,然后繼續(xù)請(qǐng)求下一個(gè)標(biāo)記。如果不能夠匹配,解析器就會(huì)把標(biāo)記存起來(lái),會(huì)繼續(xù)請(qǐng)求標(biāo)記,一直到能找到可與所有內(nèi)部存儲(chǔ)的標(biāo)記匹配的規(guī)則.萬(wàn)一找不到任何能夠匹配的規(guī)則,那么解析器就會(huì)引發(fā)一個(gè)異常.這意味著文檔無(wú)效,包含語(yǔ)法錯(cuò)誤.

 

    解析樹(shù)還不最后的,解析往往是在翻譯的時(shí)候使用的,而翻譯是把將輸入文檔轉(zhuǎn)換成另一種格式。編譯就是這樣一個(gè)例子,編譯器可把源代碼編譯成機(jī)器代碼,具體過(guò)程是首先將源代碼解析成解析樹(shù),然后將解析樹(shù)翻譯成機(jī)器代碼文檔.

 

    以上大家有時(shí)間的話,可以了解下,對(duì)于我們很多上海網(wǎng)站制作技術(shù)人員來(lái)說(shuō),不要求很精通,懂得其大致的工作原理就足夠了.

 

       本文由上海藝覺(jué)網(wǎng)絡(luò)科技有限公司(http://nimediafire.com)原創(chuàng)編輯轉(zhuǎn)載請(qǐng)注明。  

相關(guān)新聞

CONTACT USCAREERSFOODSERVICEPRESSPRIVACY POLICY
? 2014 yijueweb. All rights reserved.
?