1. 程式人生 > >編譯器可以生成相同的環境下運行的目標代碼

編譯器可以生成相同的環境下運行的目標代碼

計算 nbsp ++ 轉換 編譯器 amp all public tab

編譯器可以生成用來在與編譯器本身所在的計算機和操作系統(平臺)相同的環境下運行的目標代碼 ,這種編譯器又叫做“本地”編譯器。

另外,編譯器也可以生成用來在其它平臺上運行的目標代碼,這種編譯器又叫做交叉編譯器。交叉編譯器在生成新的硬件平臺時非常有用。

“源碼到源碼編譯器”是指用一種高級語言作為輸入,輸出也是高級語言的編譯器。例如: 自動並行化編譯器經常采用一種高級語言作為輸入,轉換其中的代碼,並用並行代碼註釋對它進行註釋(如OpenMP)或者用語言構造進行註釋(如FORTRAN的DOALL指令)

 1 package Com.Table;
 2 /*=========
 3  * *   
4 *** 5 ***** 6 ******* 7 ***** 8 *** 9 * 10 ========= */ 11 public class SixTable { 12 public static void main(String [] args){ 13 for (int i = 0; i < 4; i++) 14 { 15 for (int j = 0; j < 7; j++) 16 { 17 if (i == 0 && j == 3)
18 { 19 System.out.print("*"); 20 } 21 else if(i == 1 && j < 5 && j > 1) 22 { 23 System.out.print("*"); 24 } 25 else if(i == 2 && j < 6 && j > 0)
26 { 27 System.out.print("*"); 28 } 29 else if (i == 3) 30 { 31 System.out.print("*"); 32 } 33 else 34 { 35 System.out.print(" "); 36 } 37 } 38 System.out.println(); 39 } 40 41 for (int i = 0; i < 3; i++) 42 { 43 for (int j = 0; j < 7; j++) 44 { 45 if(i == 0 && j < 6 && j > 0) 46 { 47 System.out.print("*"); 48 } 49 else if (i == 1 && j < 5 && j > 1) 50 { 51 System.out.print("*"); 52 } 53 else if (i == 2 && j ==3) 54 { 55 System.out.print("*"); 56 } 57 else 58 { 59 System.out.print(" "); 60 } 61 } 62 System.out.println(); 63 } 64 } 65 } 66 67

編譯器可以生成相同的環境下運行的目標代碼