tiny 的編譯原理實踐

2021-09-16 19:57:31 字數 981 閱讀 7564

首先將tm.c的執行得到tiny虛擬機器

globals.h                               main.c

util.h                                      util.c

scan.h                                     scan.c

parse.h                                    parse.c

symtab.h                                symtab.c

analyze.h                               analyze.c

code.h                                     code.c

cgen.h                                     cgen.c

拷貝到工程的目錄(tiny)下,然後把這些檔案新增到工程中;

編譯鏈結,生成可執行檔案tiny.exe

三、編譯tiny程式

1.       開啟dos視窗(開始->執行->輸入cmd),開啟c:(輸入cd\);

2.       將壓縮包內的sample.tny(用途是輸入乙個數給出該數的階乘),儲存到c:中(也可以自己用tiny語言寫乙個tny的源**);

3.       輸入tiny sample.tny,編譯原始檔,生成目標**sample.tm;

4.       輸入tm sample.tm,用tm虛擬機器執行目標**,可先輸入h命令,檢視虛擬機器的功能;

5.       根據提示,輸入命令,比如輸入t進行跟蹤程式執行的過程:

out instruction prints:輸出結果

未完。。。

編譯原理 TINY編譯器學習(一)

編譯原理及實踐 中附帶的tiny編譯器,僅有幾千行,這點 就實現了乙個完整的編譯器,及對應的目標 執行程式,接下來會用一段時間研究下這個 1.源 2.原始碼結構 globals.h main.c util.h util.c scan.h scan.c parse.h parse.c symtab.h...

編譯原理實驗一 TINY語言的詞法分析

實驗一 tiny語言的詞法分析 一 實驗目的 評價依據,描述是否準確到位 構造tiny語言的詞法分析器 掃瞄器 要求利用第三方的lex工具進行構造。實驗結果 構造出的掃瞄器,能夠讀入教材樣例中給出的tiny語言的示例 分解成token輸出。二 實驗設計 評價依據實驗方案設計是否合理 一 tiny語言...

Tiny6410 交叉編譯helloworld程式

在工作目錄下建立helloworld.c檔案 cpp view plain copy print include main 儲存關閉後。編譯helloworld檔案 csharp view plain copy print root snail home workdir qt project hel...