Puput Amaliyah - 202031069 - Tekkom G

 Teknik Kompilasi

14. Apa saja metode yang dipakai untuk mengirimkan parameter pada teknik kompilasi, jelaskan masing-masing metode tersebut dengan studi kasus?

15. Salah satu peran pengurai dalam teknik kompilasi adalah mengatasi kesalahan syntax, jelaskan 4 strategi dalam pemulihan kesalahan tersebut?



JAWABAN

14. Metode yang dipakai untuk mengirimkan parameter pada teknik kompilasi yaitu :

        a. Metode Pemindahan Nilai (Pass-by-Value) :

        Metode ini mengirimkan nilai parameter ke fungsi atau prosedur yang dipanggil. Dalam metode             ini, salinan nilai parameter dibuat di dalam memori dan digunakan oleh fungsi atau prosedur                 tersebut. Perubahan pada nilai parameter di dalam fungsi tidak akan mempengaruhi nilai aslinya             di luar fungsi. Metode ini digunakan untuk melindungi nilai asli parameter dari perubahan yang             mungkin terjadi di dalam fungsi.

         Contoh :

        

        Outputnya :

        


        b. Pengiriman Parameter melalui Referensi (Pass-by-Reference):

        Metode ini mengirimkan alamat memori parameter ke fungsi atau prosedur yang dipanggil. Dalam         metode ini, perubahan yang dilakukan pada nilai parameter di dalam fungsi akan mempengaruhi            nilai aslinya di luar fungsi. Metode ini digunakan ketika kita ingin mengubah nilai parameter yang         dilewatkan dan ingin menghindari pembuatan salinan yang tidak perlu.

        Contoh :

        

        Outputnya :

        

        c. Pengiriman Parameter melalui Nilai Kembali (Pass-by-Result):

        Metode ini mengirimkan parameter dengan membuat salinan nilai awal sebelum memasuki fungsi atau prosedur. Setelah fungsi selesai dieksekusi, nilai yang diubah di dalam fungsi dikembalikan dan diterapkan pada nilai asli parameter di luar fungsi. Metode ini jarang digunakan dalam praktik karena memerlukan alokasi memori tambahan untuk salinan nilai parameter.

        Contoh :

        


15. Empat strategi dalam Pemulihan Sintaks :

            1. Strategi Injeksi Token (Token Injection):

Strategi ini melibatkan penyisipan token tambahan ke dalam aliran masukan (input stream) untuk mengatasi kesalahan syntax. Pengurai mencoba memasukkan token tambahan ke dalam aliran masukan dan melanjutkan proses analisis. Hal ini dilakukan untuk mengatur ulang keadaan parser agar cocok dengan sintaks yang diharapkan dan mungkin memulihkan parsing yang benar. Namun, strategi ini bisa menjadi rumit karena pengurai harus memastikan bahwa token tambahan yang disisipkan tidak mengubah makna dari program.


2. Strategi Penghilangan Token (Token Deletion) :

Dalam strategi ini, pengurai mencoba menghapus token yang salah atau tidak cocok dari aliran masukan untuk melanjutkan proses parsing. Dengan menghilangkan token yang tidak valid, pengurai dapat mencoba kembali parsing dari titik yang lebih lanjut. Namun, strategi ini juga memiliki kelemahan karena penghilangan token yang salah bisa menyebabkan informasi yang hilang dan kesalahan dalam proses parsing.

 

            3. Strategi Penggantian Token (Token Substitution) :

Ketika terjadi kesalahan syntax, pengurai dapat mencoba mengganti token yang salah atau tidak cocok dengan token yang valid. Dengan melakukan penggantian token, pengurai dapat melanjutkan proses parsing dari titik yang benar. Strategi ini bergantung pada pemahaman yang baik tentang sintaksis bahasa pemrograman yang digunakan dan daftar token yang valid.

 

            4. Strategi Pemulihan Sinkronisasi (Synchronization Recovery) :

Strategi ini fokus pada sinkronisasi kembali pengurai dengan struktur sintaksis yang benar dalam kode program. Jika pengurai menemui kesalahan, ia mencoba mencari token yang valid untuk dilanjutkan, seperti tanda kurung penutup, tanda titik koma, atau kata kunci tertentu. Dengan menemukan token yang valid, pengurai dapat melanjutkan proses parsing dengan harapan memulihkan struktur sintaksis yang benar.

        
        









Komentar

Postingan populer dari blog ini

FUNGSI DAN GRAFIK FUNGSI - KALKULUS 1

SISTEM BILANGAN REAL - KALKULUS 1