亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        編譯器的現(xiàn)狀與YC編譯器的分析

        2021-04-18 00:43:03楊曉兵
        科技研究·理論版 2021年18期
        關(guān)鍵詞:編譯器優(yōu)點分析

        楊曉兵

        摘要:本文通過介紹編譯器的現(xiàn)狀,并著重論述了三種編譯器的概念及缺點,引出YC編譯器的特點及優(yōu)勢,允許最終用戶直接對開發(fā)商提供的產(chǎn)品再次擴展與開發(fā)。

        關(guān)鍵詞:編譯器;YC;分析;優(yōu)點

        編譯器是將“一種語言(通常為高級語言)”翻譯為“另一種語言(通常為低級語言)”的程序。C語言代碼主要是在特定詞匯照著特定格式排列組合而成的,方便程序員的識別與理解,可CPU卻無法直接讀懂C語言代碼,其往往只能讀懂二進制形式的指令。因此,開發(fā)者必須設(shè)計出一個專門的工具,將程序員使用的C語言代碼直接轉(zhuǎn)化為CPU能讀懂的二進制指令,換句話說就是將代碼轉(zhuǎn)變?yōu)?exe程序;此類工具名為編譯器(Compiler)。編譯器能夠識別代碼中的詞匯、句子以及各種特定的格式,并將他們轉(zhuǎn)換成計算機能夠識別的二進制形式,這個過程稱為編譯。

        1.編譯器的現(xiàn)狀

        編譯器輸出是指通過包含入口點的名字、地質(zhì)、外部調(diào)用等內(nèi)容的機器代碼,構(gòu)成目標文件。通常,一組目標文件并非出自同一個編譯器,但是一組目標文件中的所有文件在編譯時必須使用相同的輸出格式,同時需要確保其能夠鏈接在一起,形成可供用戶執(zhí)行的EXE文件。

        當今世界上有三大編譯器:msvc編譯器、gcc編譯器和LLVM/clang編譯器。這三大編譯器,直接或者間接開發(fā)出了現(xiàn)在主流的操作系統(tǒng)和幾乎所有的軟件。

        (1) msvc編譯器是微軟公司的產(chǎn)品,有40年的歷史,是應(yīng)用最廣泛的編譯器之一,它功能強大,但體積也非常龐大。Windows電腦操作系統(tǒng)、相應(yīng)的應(yīng)用程序和驅(qū)動程序,都是直接或間接由msvc編譯器開發(fā)的(依賴JavaScript、Python、Java、Basic等語言)。

        (2)gcc編譯器是開源的,不屬于任何公司,它的體積巨大。Linux電腦操作系統(tǒng),Android手機操作系統(tǒng)、所有嵌入式OS操作系統(tǒng)以及配套的驅(qū)動程序、應(yīng)用程序,都是直接或間接用gcc編譯器開發(fā)的。

        (3)LLVM/clang編譯器是開源的,它由gcc編譯器發(fā)展而來,交給蘋果公司負責開發(fā)與維護。其中,macOS電腦操作系統(tǒng)、iOS手機操作系統(tǒng)以及與之配套的應(yīng)用軟件都是出自該編譯器。

        但是三大編譯器存在明顯的缺點:只兼容自己開發(fā)出的三大電腦操作系統(tǒng),即Windows—msvc,Linux—gcc,macOS-—LLVM/clang。舉例來說:在Windows操作系統(tǒng)下開發(fā)的軟件不能在Linux和macOS中直接編譯。如果想讓一個軟件在各個操作系統(tǒng)中都能運行,那就需要針對每種操作系統(tǒng)對此軟件做相應(yīng)開發(fā),這無疑增加了開發(fā)工作量和維護成本;若是軟件只能在特定的操作系統(tǒng)下運行,不同的版本對應(yīng)的動態(tài)鏈接庫也將有所差異,這就要需要開發(fā)多套同樣功能的動態(tài)庫,同樣增加了成本。 如果軟件產(chǎn)品規(guī)模較大(如文件數(shù)超過一萬),則各文件中的函數(shù)調(diào)用關(guān)系極其復雜、調(diào)試費時費力,哪怕改作微小的改動,都需重新生成執(zhí)行代碼。

        2.三大編譯器缺點

        軟件開發(fā)講究模塊化,在C/C++中,有兩種方式實現(xiàn)模塊化。(1)類繼承或源碼文件;(2)動態(tài)鏈接庫或COM對象。在這兩種方式中,前者的模塊被放入執(zhí)行文件,后者的模塊以二進制方式提供。用戶無法修改模塊,很難進行二次開發(fā)和功能擴展。YC編譯器除提供上述兩種模塊方式外,還通過擴展C/C++語法提供了“獨立源碼模塊”的方式,這種方式的模塊以C/C++源碼方式提供,用戶通過修改模塊源碼而進行二次開發(fā)和功能擴展,源碼修改后,無需手動編譯。

        YC編譯器經(jīng)過近20年的研發(fā),已經(jīng)具有三大編譯器的主要功能,同時解決了三大編譯器的上述缺點。一個軟件用YC編譯器只需要編寫一套源代碼,就可以在所有操作系統(tǒng)上運行,而三大編譯器則需要針對不用的操作系統(tǒng)進行開發(fā)。

        3.YC編譯器特點分析

        YC(Yang C++,簡稱YC)瀏覽器—國內(nèi)首款全新瀏覽器內(nèi)核,YC瀏覽器內(nèi)核(暫命名Ycweb)的研發(fā)始于2001年底,歷時十年。幾十萬行的代碼,沒有借用任何開源的代碼,做到了真正獨立自主開發(fā),是繼世界主流四款瀏覽器內(nèi)核之后的又一款全新瀏覽器內(nèi)核。

        YC瀏覽器主要依托于HTML5技術(shù),是一個智能終端瀏覽器,其不僅體積小、運行速度高、拓展性強,還能夠自由定制、安全性能較強;不同于其他的瀏覽器,YC瀏覽器可以實現(xiàn)對Trident、Gecko、Presto以及Webkit等四款內(nèi)核瀏覽器的兼容,網(wǎng)頁制作速度更高。此外,YC瀏覽器還支持最先進的網(wǎng)絡(luò)技術(shù),包含W3C標準、CSS3、HTML5、Canvas、WebM、ECMAScript 5以及JavaScript等。由此可見,YC瀏覽器具備超強的核心引擎,能夠帶動更多的便捷應(yīng)用。

        YC瀏覽器還允許第三方應(yīng)用擴展,為廠商開發(fā)配備了接口,瀏覽器中專門內(nèi)置了YC++編譯器,能夠?qū)崿F(xiàn)實時編譯。此外,使用者還可以直接在瀏覽器中開發(fā)插件、應(yīng)用軟件,甚至可以根據(jù)自己的需要定制特殊功能、根據(jù)需要開發(fā)出個性化的產(chǎn)品與服務(wù),并將其直接傳輸至智能終端設(shè)備中。

        (1)兼容性強。YC編譯器支持C、C++、JavaScript、HTML、css、x86匯編、arm匯編等語言,支持32位和64位的Intel系列CPU,支持64位ARM系列CPU。

        (2)應(yīng)用性廣。YC編譯器可以高效地開發(fā)各種高性能的系統(tǒng)軟件和應(yīng)用軟件(如操作系統(tǒng),工業(yè)軟件,行業(yè)軟件等)。

        (3)功能豐富。YC編譯器比三大編譯器具有更佳的模塊管理功能,即不需要手動編寫生成代碼的腳本,它用HTML+css來生成界面,通過程序語句來實現(xiàn)自動編譯,用C、C++和JavaScript來實現(xiàn)功能。

        (4)適合教學。YC編譯器具有詳細分析源碼邏輯關(guān)系的功能,可以讓初學者輕松地學習軟件技術(shù)。

        (5)使用便捷。YC編譯器提供幾個編譯函數(shù),供三大編譯器調(diào)用。因此,現(xiàn)有的軟件產(chǎn)品可以用YC編譯器生成其中的任意部分代碼,而不必整個重新用YC編譯器開發(fā),從而使工作量減少到最小。

        (6)開源性強。YC編譯器開源了80%左右。如HTML解析器,JavaScript的Jit,c/c++的x86-32、x86-64、arm64等后端。用戶可以修改優(yōu)化這些代碼,也可以編寫新的CPU后端代碼,使YC編譯器支持新的CPU。

        (7)可以自舉。YC編譯器可以自己編譯自己。它的體積最小可裁剪到1.5M左右,加上HTML解析器不超過6M。生成同樣質(zhì)量的代碼,編譯速度超過三大編譯器許多。編譯所需要的內(nèi)存也遠遠小于三大編譯器。因此它非常適合與用戶軟件產(chǎn)品集成在一塊,方便產(chǎn)品的直接用戶進行二次開發(fā)和功能擴展。

        (8)操作性好。YC編譯器提供了一個集成開發(fā)環(huán)境(IDE),還提供一個開源的適用于各平臺的代碼編輯器,命名為YC編輯器。YC編譯器的所有代碼都用YC編輯器寫成,用戶可以非常容易地改寫、擴展這個編輯器。

        4.結(jié)語

        YC編譯器除了能夠?qū)崿F(xiàn)靜態(tài)、動態(tài)語言的編譯,還可以用于解析HTML超文本。本文通過對實際示例程序進行分析,發(fā)現(xiàn)其均能夠經(jīng)由YC編譯器生成可獨立執(zhí)行文件,以便使用者學習、開發(fā)、使用。

        參考文獻:

        [1]劉舒,彭鳳,段曉悅,等.一種DHFR介導的可調(diào)控的腺嘌呤堿基編輯器的構(gòu)建[J].現(xiàn)代生物醫(yī)學進展,2021(23):4401-4406.

        [2]甄仲強.云計算下的移動通信網(wǎng)絡(luò)優(yōu)化實踐探究[J].工程建設(shè)與設(shè)計,2021(22):98-99+106.

        [3]楊娜.新媒體集成發(fā)布平臺富文本編輯器選型淺析[J].現(xiàn)代電視技術(shù),2021(11):111-113.

        猜你喜歡
        編譯器優(yōu)點分析
        隱蔽失效適航要求符合性驗證分析
        《如此優(yōu)點》
        童話世界(2020年8期)2020-12-18 20:12:41
        我的優(yōu)點是什么(上)
        學生天地(2020年4期)2020-08-25 09:07:58
        我的優(yōu)點是什么(下)
        學生天地(2020年7期)2020-08-25 09:00:54
        基于相異編譯器的安全計算機平臺交叉編譯環(huán)境設(shè)計
        電力系統(tǒng)不平衡分析
        電子制作(2018年18期)2018-11-14 01:48:24
        電力系統(tǒng)及其自動化發(fā)展趨勢分析
        通用NC代碼編譯器的設(shè)計與實現(xiàn)
        編譯器無關(guān)性編碼在微控制器中的優(yōu)勢
        基于ARM嵌入式平臺的x86譯碼SOC架構(gòu)設(shè)計
        中文字幕人乱码中文字幕乱码在线| 日韩欧美一区二区三区中文精品| 99精品久久久中文字幕| 一区二区三区手机看片日本韩国| 加勒比东京热中文字幕| 精品亚洲成a人片在线观看| 东京热久久综合久久88| 色人阁第四色视频合集网| 国产91会所女技师在线观看| 粗大的内捧猛烈进出小视频| 日韩人妻精品无码一区二区三区| 2020亚洲国产| 午夜视频一区二区三区在线观看| 亚洲国产一二三精品无码| 亚洲一区av无码少妇电影 | 亚洲动漫成人一区二区| 国产高清不卡在线视频| 一本到在线观看视频| 国产做a爱片久久毛片a片| 中文字幕亚洲无线码高清| 免费观看一区二区三区视频| 乱老年女人伦免费视频| 精品香蕉久久久爽爽| 精品丝袜国产在线播放| 国产女主播一区二区久久| 97久久超碰国产精品旧版| 日韩欧美专区| 成人综合激情自拍视频在线观看| 揄拍成人国产精品视频| 免费无码午夜福利片69| 99国产综合精品-久久久久| 精品一区二区三区人妻久久福利| 人妻哺乳奶头奶水| 草莓视频一区二区精品| 性色av一区二区三区四区久久| 亚洲av无码一区二区三区天堂| 中文字幕乱码人妻一区二区三区| 日日噜噜噜夜夜爽爽狠狠视频| 日韩人妻系列在线观看| 国产熟妇按摩3p高潮大叫| 亚洲综合偷自成人网第页色|