a级毛片在线观看,精品久久久久久亚洲精品,人人妻人人澡人人爽欧美一区九九 ,国产午夜视频在线观看

Web Design
Mobile Internet
Brand Design
Innovative
News
Encyclopedias

代碼的生成

Date:2015-03-31 Aource:尚品中國 Type:網站百科
Word Size:small  medium  big

北京網站建設里包括了代碼,代碼生成是把語法、語義分析后的中間結果(中同語言)轉換成等價的目標程序或目的程序摸塊的過程。詞法分析、語法分析和語義分析一起稱為編譯系統的前端.屬于分析部分。代碼生成和碼優化一起稱為編譯系統的后端,屬于綜合部分。中間結果是用三元式、四元式或逆波蘭式等中間語育表示的程序。目標程序是用目標語言書寫的;可以是機器語言、匯編語言乃至高級語言,隨著計算機編譯環境積執行環境的不斷完善,不僅能產生可直接執行的目標程序,也能生成可再定位或可連接的目標程序模塊.并最終通過連接裝入程序構成可直接執行的目標程序。代碼生成不但與編譯環境有關.而且與運行環境有關。所有生成的目標程序成當符合連接裝入所要求的規范。代碼生成中存儲分配和寄存器分配是直接影響目標程序功效的重要且復雜的問題,應給予足夠的重視。
 
代碼的生成

運行時存儲空間組織與管理是一個復雜而十分重要的問題,首先要了解一個過程(procedure)靜態源程序和它的目標程序在運行時的活動之間的關系。一個過程的活動指的是該過程的一次執行。為了管理過程在一次執行中所需要的信息.使用一個連續的存儲塊,我們把這樣的一個連續存儲塊稱為活動記錄。活動記錄中記錄臨時單元、內情向量、局部變量、形式單元、靜態鏈、動態鏈和返回地址。

存儲分田策略有三種:靜態分配、棧式動態分配和堆式動態分配。棧(stack)是一個特定的存儲區,它的一端是固定的,另端是浮動的.對這個存儲區.所有的信息存入也稱為堆陣式堆棧。棧的概念在編譯技術和其他軟件技術中被廣泛應用。堆(heap)是一個特定的存儲區.其分配使用方法是先把它成若干個長度可變的子存儲區,有些用干存入數據.有些供自由使用.當創建一片數據時.便需從自由公用區中選出一個足夠大自由區,把該數據存人。當該數據不再箭用時,便釋放相應的存區.這佯的存儲分配方式稱為堆式分配。堆式分配適用干理序運中長度可變的數據.如USP語育中的表等.

代瑪生成時,帝首先考慮奸相應干每個鐐程序或中間捏序的句的目標程序結構,然后一對多地轉換過去。其中還可能有些地事先不知道,可先待定,記下位置,拉上蛙,以后知淚了再回綴。為7生成更有效的目標代瑪.還有一個要重點考慮的問題是女何更有效地利用寄存器。另外.地址計算、數組引用等也都有不同,就不在此逐一敘述。
 
?

Please contact our consultant

+86 10-60259772

Please provide your contact number. The project manager of shangpin China will contact you as soon as possible.