Teknik Kompilasi G
Nama : Muhammad Dzaky Azmi Ar Rafi
Teknik Kompilasi
Nim : 202031054
Kelas : G
14. Metode yang dipakai untuk mengirimkan parameter pada teknik
kompilasi yaitu:
a). Metode Pass-by-Value
Metode ini mengirimkan nilai parameter ke prosedur atau fungsi yang
dipanggil. Nilai parameter tersebut akan disalin ke variabel lokal di dalam
prosedur atau fungsi tersebut. Perubahan pada variabel lokal tidak akan
mempengaruhi variabel asli di luar prosedur atau fungsi.
Contoh:
Pada studi kasus di atas, variabel x memiliki nilai 5 di dalam fungsi main. Ketika variabel x dikirimkan ke fungsi tambah, nilai tersebut disalin ke parameter angka dan di dalam fungsi tambah, nilai angka ditingkatkan menjadi 6. Namun, ketika kita mencetak nilai x setelah pemanggilan fungsi, nilainya tetap 5 karena variabel x di dalam fungsi tambah adalah salinan dari variabel x di luar fungsi.
b). Metode Pass-by-Reference
Metode ini mengirimkan referensi atau alamat dari variabel asli ke
prosedur atau fungsi yang dipanggil. Dalam hal ini, perubahan yang terjadi pada
variabel lokal akan mempengaruhi variabel asli.
Contoh:
c). Metode Pass-by-Value-Result
Metode ini kombinasi dari pass-by-value dan pass-by-reference. Nilai
parameter dikirimkan ke prosedur atau fungsi sebagai salinan, tetapi perubahan
yang terjadi pada variabel lokal akan diterapkan ke variabel asli saat keluar
dari prosedur atau fungsi.
Contoh:
Pada studi kasus di atas, kita memiliki fungsi tambah_satu yang akan menambahkan nilai parameter angka dengan 1 dan mengembalikan nilainya. Dalam fungsi main, kita memiliki variabel x dengan nilai 5. Ketika variabel x dikirimkan ke fungsi tambah_satu, nilai tersebut disalin ke parameter angka. Di dalam fungsi tambah_satu, nilai angka ditingkatkan menjadi 6. Namun, saat nilai angka dikembalikan dari fungsi dan disimpan kembali ke variabel x, nilai asli x juga diperbarui.
15. Empat strategi dalam pemulihan kesalahan
sintaks yaitu:
a). Pemulihan dengan penjajagan (Lookahead)
Strategi ini melibatkan penggunaan penjajagan (lookahead) dalam pengurai untuk menemukan titik pemulihan yang mungkin setelah terjadi kesalahan sintaks. Pengurai akan melihat beberapa token ke depan untuk menentukan apakah ada urutan token yang valid untuk memulihkan kesalahan tersebut. Jika ditemukan urutan token yang valid, pemulihan dilakukan dengan melewatkan token yang salah dan melanjutkan analisis.
b). Pemulihan dengan penyisipan (Insertion)
Dalam strategi ini, pengurai mencoba menyisipkan token tambahan ke dalam urutan token yang salah untuk membuat urutan tersebut valid. Pengurai akan memasukkan token tambahan secara strategis ke dalam urutan yang salah hingga menjadi urutan yang benar. Misalnya, jika tanda koma hilang dalam sebuah pernyataan, pengurai dapat mencoba menyisipkan tanda koma pada posisi yang tepat agar sintaks menjadi benar.
c). Pemulihan dengan penghapusan (Deletion)
Strategi ini melibatkan penghapusan token yang salah atau berlebihan dari urutan token yang salah untuk mencapai urutan token yang valid. Jika terdapat token yang tidak valid dalam suatu urutan, pengurai dapat mencoba menghapus token tersebut untuk melihat apakah urutan yang tersisa akan menjadi valid. Misalnya, jika tanda kurung tutup tidak terdapat setelah tanda kurung buka, pengurai dapat mencoba menghapus tanda kurung buka untuk melihat apakah sintaks menjadi benar.
d). Pemulihan dengan penggantian (Substitution)
Dalam strategi ini, pengurai mencoba menggantikan token yang salah
dengan token yang benar untuk memperbaiki urutan token yang tidak valid. Jika
token yang ditemukan tidak cocok dengan token yang diharapkan, pengurai dapat
mencoba mengganti token tersebut dengan token alternatif yang sesuai. Misalnya,
jika terdapat kata kunci yang salah dalam sebuah pernyataan, pengurai dapat
mencoba menggantinya dengan kata kunci yang benar.



Komentar
Posting Komentar