導航:首頁 > 源碼編譯 > 為什麼修改出口無法編譯

為什麼修改出口無法編譯

發布時間:2024-09-23 07:50:31

編譯原理 四元式

四元式是一種比較普遍採用的中間代碼形式。

代碼段的四元式表達式:

101 T:=0 (表達式為假的出口)

103 T:=1 (表達式為真的出口)

因為用戶的表達式只有一個A<B,因此A<B的真假出口就是表達式的真假出口,所以

100: if a<b goto 103 (a<b為真,跳到真出口103)

101: T:=0(否則,進入假出口)

102: goto 104 (要跳過真出口,否則T的值不就又進入真出口了,為真)

103: T:=1

104:(程序繼續執行)

(1)為什麼修改出口無法編譯擴展閱讀:

四元式是一種更接近目標代碼的中間代碼形式。由於這種形式的中間代碼便於優化處理,因此,在目前許多編譯程序中得到了廣泛的應用。

四元式實際上是一種「三地址語句」的等價表示。它的一般形式為:

(op,arg1,arg2,result)

其中, op為一個二元 (也可是一元或零元)運算符;arg1,arg2分別為它的兩個運算 (或操作)對象,它們可以是變數、常數或系統定義的臨時變數名;運算的結果將放入result中。四元式還可寫為類似於PASCAL語言賦值語句的形式:

result ∶= arg1 op arg2

需要指出的是,每個四元式只能有一個運算符,所以,一個復雜的表達式須由多個四元式構成的序列來表示。例如,表達式A+B*C可寫為序列

T1∶=B*C

T2∶=A+T1

其中,T1,T2是編譯系統所產生的臨時變數名。當op為一元、零元運算符 (如無條件轉移)時,arg2甚至arg1應預設,即result∶=op arg1或 op result ;對應的一般形式為:

(op,arg1,,result)

(op,,,result)

與為什麼修改出口無法編譯相關的資料

熱點內容
dota命令大全單機 瀏覽:711
android44屏蔽home鍵 瀏覽:886
五金程序員編程多少錢一個月 瀏覽:176
雲伺服器違規對外攻擊 瀏覽:188
phprips 瀏覽:6
python怎麼單干 瀏覽:385
創維安卓投屏為什麼沒聲音 瀏覽:750
餓了么app掃碼在哪裡 瀏覽:570
3600解壓慢 瀏覽:620
csgo單機命令 瀏覽:799
中間件裝飾器python 瀏覽:823
板金圖app哪個好 瀏覽:231
批處理命令下載 瀏覽:764
shell命令url 瀏覽:374
雲龍電子單片機視 瀏覽:893
win2003命令重啟 瀏覽:744
雙劍天下指南源碼 瀏覽:178
linux常用基本命令 瀏覽:817
程序員進銀行 瀏覽:223
華為智慧生活app賬號中心在哪裡 瀏覽:968