• <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ù)  更多評論
              
            国产午夜精品理论片久久影视 | 久久精品aⅴ无码中文字字幕不卡| 亚洲AV日韩精品久久久久| 99久久婷婷国产综合精品草原| 久久99精品国产自在现线小黄鸭| 国色天香久久久久久久小说 | 成人a毛片久久免费播放| 久久久国产精华液| 粉嫩小泬无遮挡久久久久久| 久久综合久久综合久久综合| 久久亚洲中文字幕精品一区四| 无码乱码观看精品久久| 久久久国产一区二区三区| 久久99久久成人免费播放| 久久国产三级无码一区二区| 久久午夜福利无码1000合集| 青青青青久久精品国产| 亚洲中文字幕久久精品无码APP| 午夜人妻久久久久久久久| 国内精品久久久久久不卡影院| 国产精品一区二区久久精品涩爱| 久久99精品国产一区二区三区| 亚洲AV无码久久精品色欲| 久久精品无码一区二区三区日韩 | 国产精品免费久久| 久久99精品国产一区二区三区| 亚洲国产成人精品女人久久久| 久久精品国产99国产精品导航| 狠狠久久综合| 99re久久精品国产首页2020| 久久综合给合久久狠狠狠97色 | 久久国产精品成人影院| 国内精品久久久久影院优| 99久久精品毛片免费播放| 国产精品久久午夜夜伦鲁鲁| 精品久久久久久国产牛牛app| 欧美久久天天综合香蕉伊| 久久久久99精品成人片直播| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 精品久久久久久无码中文野结衣| 国产L精品国产亚洲区久久|