Pada bahasa C, terlepas dari keyword pada bahasa C segalanya dianggap sebagai sebuah identifier. Identifier dapat berupa nama yang diberikan kepada variabel, konstanta, fungsi, dan data definisi user. Sebuah nama variabel dapat terdiri dari alfabet, angka, dan karakter. Tetapi nama variabel tidak dapat diawali dengan angka. Berikut alasan kenapa nama sebuah variabel tidak dapat dimulai dengan angka.
Lexical Analysis
Syntax Analysis
Semantic Analysis
Intermediate Code Generation
Code Optimization
Code Generation
Symbol Table
Backtracking sangat dihindari pada fase analisis lexical ketika melakukan kompilasi potongan kode program. Variabel seperti Apple;, kompilator akan mendeteksinya sebagai sebuah identifier ketika ditemui huruf 'A' pada pase analisis lexical. Namun, sebuah variabel seperti 123appple;, compiler tidak akan dapat menentukan jika variabel tersebut apakah sebuah angka atau identifier sampai menemukan huruf 'a' dan membutuhkan bactracking pada fase analisis lexical untuk mengidentifikasi apakah karakter 123apple adalah sebuah variabel atau bukan. Tetapi proses backtracking tidak didukung penggunaannya pada compiler. Ketika melakukan parsing token yang perlu dilihat adalah karakter pertamanya saja untuk menentukan apakah sekumpulan karakter termasuk dalam identifier atau lateral dan dapat dikirim pada fungsi yang tepat untuk diproses sehingga proses akan menjadi lebih optimal.
Lexical Analysis
Syntax Analysis
Semantic Analysis
Intermediate Code Generation
Code Optimization
Code Generation
Symbol Table
Backtracking sangat dihindari pada fase analisis lexical ketika melakukan kompilasi potongan kode program. Variabel seperti Apple;, kompilator akan mendeteksinya sebagai sebuah identifier ketika ditemui huruf 'A' pada pase analisis lexical. Namun, sebuah variabel seperti 123appple;, compiler tidak akan dapat menentukan jika variabel tersebut apakah sebuah angka atau identifier sampai menemukan huruf 'a' dan membutuhkan bactracking pada fase analisis lexical untuk mengidentifikasi apakah karakter 123apple adalah sebuah variabel atau bukan. Tetapi proses backtracking tidak didukung penggunaannya pada compiler. Ketika melakukan parsing token yang perlu dilihat adalah karakter pertamanya saja untuk menentukan apakah sekumpulan karakter termasuk dalam identifier atau lateral dan dapat dikirim pada fungsi yang tepat untuk diproses sehingga proses akan menjadi lebih optimal.
Tidak ada komentar:
Posting Komentar
Respon komentar 7 x 24 jam, so please be patient :D