Page 44 - SK tingkatan 5
P. 44

Penterjemah (translator) Bahasa Pengaturcaraan
                 Tugas penterjemah adalah untuk menukarkan arahan dalam bentuk yang difahami manusia kepada
                 bentuk yang difahami mesin, iaitu daripada bahasa pengaturcaraan aras tinggi dan rendah kepada
                 bahasa mesin sebelum atur cara dilaksanakan. Proses penterjemahan bahasa aras tinggi dilakukan
                 sama ada oleh pengkompil (compilers) atau pentafsir (interpreter). Pengkompil menukarkan seluruh
                 kod sumber atur cara ke kod mesin sebelum dilaksanakan. Pentafsir menukar kod sumber atur
                 cara mengikut baris demi baris dengan satu baris dalam satu masa. Pentafsir adalah lebih interaktif
                 berbanding dengan pengkompil manakala bahasa himpunan diterjemahkan kepada bahasa mesin oleh
                 Assembler. Jadual 1.2.5 menunjukkan bahasa pengaturcaraan yang beroperasi di bawah penterjemah
                 masing-masing.


                                       Jadual 1.2.5  Bahasa pengaturcaraan dengan penterjemahnya

                             Bahasa pengaturcaraan aras tinggi   Pengkompil         Pentafsir
                         C, C++, COBOL                              √
                         Python, Perl, PHP, Ruby                                       √

                         Java, Visual Basic, C#                     √                  √


                   Bahasa pengaturcaraan  Java ialah bahasa yang melibatkan dua proses semasa terjemahan,
                 iaitu dikompil dan ditafsir sebelum diproses oleh pemproses. Pada peringkat awal atur cara Java,
                 pengkompil javac menukarkan atur cara ke bentuk yang dipanggil bytecode. Proses ini berlaku dalam
                 ingatan JVM. Bytecode kemudiannya ditafsirkan pula oleh atur cara lain yang dinamakan Java. Atur
                 cara Java ini mentafsir bytecode baris demi baris dan menukarnya kepada bentuk kod mesin untuk
                 dilaksanakan oleh pemproses. Rajah 1.2.11, Rajah 1.2.12 dan Rajah 1.2.13 menunjukkan proses
                 yang berlaku apabila bahasa pengaturcaraan aras tinggi diterjemahkan kepada kod mesin sebelum
                 diproses.



                                            Dikompil (Compile)  Ditafsir (Interpret)

                                       Bahasa
                                    pengaturcaraan       bytecode          Kod mesin
                                        Java

                                   Rajah 1.2.11  Penggunaan pentafsir (interpreter) dan pengkompil (compiler)


                                Dikompil (Compile)                        Ditafsir (Interpret )



                          Bahasa                                    Bahasa
                       pengaturcaraan       Kod mesin            pengaturcaraan        Kod mesin
                            C                                       Python


                      Rajah 1.2.12  Penggunaan pengkompil (compiler)  Rajah 1.2.13  Penggunaan pentafsir (interpreter)



                  36   Sains Komputer Tingkatan 5                                                                                                                                                                PB
   39   40   41   42   43   44   45   46   47   48   49