• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-341  評論-2670  文章-0  trackbacks-0
                JIT是just in time,一門包含了JIT的腳本引擎就是將腳本編譯成機(jī)器碼,讓CPU而不是自己寫的虛擬機(jī)運(yùn)行。這樣做有助于提供高速的運(yùn)行環(huán)境、以及與C++更加方便的融合。這次計(jì)劃所需要的任務(wù)如下:

                匯編器。匯編器指的是可以做如下轉(zhuǎn)變的一個工具:機(jī)器碼 <--> 匯編程序的數(shù)據(jù)結(jié)構(gòu) <--> 匯編程序文本表示。有了三個可以互相轉(zhuǎn)換的結(jié)構(gòu)之后,編譯器可以在更高層的層面上開發(fā),調(diào)試也變得更加容易。

                中間指令。由于x86的指令集過于復(fù)雜,并且以后可能會發(fā)生重大變更,因此有必要開發(fā)一個容易使用的、功能簡潔但是強(qiáng)大的另一個指令集,提供中間指令到匯編的單向轉(zhuǎn)換操作。這主要是用來解決x86指令互相之間操作不夠統(tǒng)一、寄存器分配和更好的x86指令選擇等問題,并且可以讓以后的編譯器更加容易開發(fā)。

                內(nèi)存管理器。由于匯編是不處理內(nèi)存申請釋放等操作的,因此需要將內(nèi)存管理器,連同垃圾收集器,一起封裝成函數(shù)供匯編代碼調(diào)用。這個內(nèi)存管理器屆時將使用C#和Java均驗(yàn)證過的多代收集方法。如果語言不直接操作指針的話,還能提供壓縮操作。

                基本語言?;菊Z言擁有絕大多數(shù)的沒有重復(fù)的必要的基礎(chǔ)設(shè)施,并提供基本語言到中間指令的單向轉(zhuǎn)換操作。

                腳本語言。當(dāng)然基本語言如果足夠強(qiáng)大的話也能變成一門腳本。這里指的腳本是類似DSL那樣有特殊目的語言。編譯器所需要的詞法分析器可以大部分交給我開發(fā)的VL++2.0的Syngram負(fù)責(zé),并且編譯成基本語言。以后制作DSL將會變得非常簡單。

                匯編器是體力活,因此我想了一個辦法。Intel手冊上的指令集的二進(jìn)制碼表還是寫得相當(dāng)有規(guī)律的,因此可以復(fù)制下來集中到一起(已完成),然后使用正則表達(dá)式進(jìn)行第一步處理,將碼表、語法和說明三部分分開成更加合理的格式,然后再用一個正則表達(dá)式進(jìn)行處理,最后生成記載著翻譯方法的C++代碼。等這一部分完成之后,可能會給出相關(guān)的代碼,并且解釋x86在32位下的詳細(xì)的指令格式。64位等購買新電腦并安裝win7之后才開始,目前沒有條件。
            posted on 2009-02-13 21:18 陳梓瀚(vczh) 閱讀(2799) 評論(5)  編輯 收藏 引用 所屬分類: JIT

            評論:
            # re: 新計(jì)劃出爐:含JIT的腳本引擎[未登錄] 2009-02-14 02:59 | 無限
            可以寫一個虛擬機(jī)層面是brainfuck的腳本引擎么  回復(fù)  更多評論
              
            # re: 新計(jì)劃出爐:含JIT的腳本引擎 2009-02-14 04:59 | 陳梓瀚(vczh)
            根據(jù)我對brainfuck的理解,應(yīng)當(dāng)是可以的。  回復(fù)  更多評論
              
            # re: 新計(jì)劃出爐:含JIT的腳本引擎[未登錄] 2009-02-14 22:37 | 無限
            @陳梓瀚(vczh)
            那么你能不能動手做一個實(shí)例來看看呢
            可以選個簡單的腳本語言 比如lua來44  回復(fù)  更多評論
              
            # re: 新計(jì)劃出爐:含JIT的腳本引擎 2009-02-14 22:57 | 陳梓瀚(vczh)
            @無限
            等JIT做完了再說,說不定一高興會把brainfuck編譯到x86上跑。  回復(fù)  更多評論
              
            # re: 新計(jì)劃出爐:含JIT的腳本引擎 2009-02-15 17:55 | SOS
            opcode?  回復(fù)  更多評論
              
            伊人久久大香线蕉精品不卡| 久久99亚洲网美利坚合众国| 亚洲另类欧美综合久久图片区| 亚洲欧美日韩精品久久亚洲区| 久久亚洲精精品中文字幕| 国产精品99久久久久久猫咪| 偷窥少妇久久久久久久久| 久久久久免费精品国产| 亚洲а∨天堂久久精品| 国产精品久久毛片完整版| 久久久久久久精品成人热色戒| 久久这里只精品国产99热| 人妻精品久久无码区| 色综合久久88色综合天天 | 久久福利青草精品资源站免费| 久久精品极品盛宴观看| 97久久精品人人澡人人爽| 久久精品无码一区二区无码| 精品国产乱码久久久久久人妻| 久久影院久久香蕉国产线看观看| 狠狠色丁香久久婷婷综合五月| 久久国产劲爆AV内射—百度| 久久这里的只有是精品23| 无码任你躁久久久久久久| 久久精品99无色码中文字幕| 日韩精品久久久久久| aaa级精品久久久国产片| 好属妞这里只有精品久久| 精品久久久久久无码专区| 久久久久亚洲AV片无码下载蜜桃| 久久久亚洲裙底偷窥综合| 久久久午夜精品| 久久精品国产免费观看 | 91视频国产91久久久| 无码久久精品国产亚洲Av影片 | 久久av无码专区亚洲av桃花岛| 蜜臀久久99精品久久久久久小说 | 狠狠人妻久久久久久综合蜜桃| 亚洲欧美精品伊人久久| 久久精品亚洲欧美日韩久久| 久久久久亚洲精品无码网址 |