Apakah pengkompil, atau Bagaimana untuk membuat komputer memahami perkara yang anda inginkan daripadanya?

Isi kandungan:

Apakah pengkompil, atau Bagaimana untuk membuat komputer memahami perkara yang anda inginkan daripadanya?
Apakah pengkompil, atau Bagaimana untuk membuat komputer memahami perkara yang anda inginkan daripadanya?

Video: Apakah pengkompil, atau Bagaimana untuk membuat komputer memahami perkara yang anda inginkan daripadanya?

Video: Apakah pengkompil, atau Bagaimana untuk membuat komputer memahami perkara yang anda inginkan daripadanya?
Video: Как на самом деле работает Spring AOP [Путешествие с Spring AOP — Часть 2] 2024, Mungkin
Anonim

Peringkat akhir mencipta atur cara ialah menterjemah algoritma yang ditulis dalam salah satu bahasa pengaturcaraan (C/C++, Pascal, dll.) ke dalam bahasa mesin peringkat rendah. Ini disebabkan oleh fakta bahawa untuk melaksanakan apa-apa tugas, komputer perlu diberi arahan dalam bahasa yang mereka fahami, hampir dengan binari dan beroperasi dengan struktur data primitif (bit, bait atau perkataan). Proses menterjemah pernyataan khusus domain bahasa peringkat tinggi ke dalam kod binari dipanggil terjemahan. Terdapat dua kaedah terjemahan - kompilasi dan tafsiran.

penyusun ialah
penyusun ialah

Penyusun - apakah itu?

Analisis banyak tafsiran istilah "penyusun" dan "penyusun" membolehkan kami menyerlahkan definisi berikut. Pengkompil ialah program yang direka untuk menterjemah teks algoritma sumber daripada bahasa peringkat tinggi kepada set arahan yang setara dalam bahasa berorientasikan mesin. Ini ialah apa yang dipanggil kod objek, untuk pemasangan seterusnya kod objek yang terhasil ke dalam modul program sedia untuk digunakan.

Penyusun dan jurubahasa - persamaan dan perbezaan

Penterjemah ialah utiliti yangserta pengkompil, direka untuk menterjemah kod sumber kepada kod mesin. Walau bagaimanapun, tidak seperti pengkompil, jurubahasa berjalan setiap kali dengan program dan melaksanakan terjemahan baris demi baris.

Anda boleh katakan bahawa pengkompil dan jurubahasa ialah pemproses bahasa yang membenarkan komputer mengenali dan melaksanakan arahan yang diberikan oleh pengaturcara.

Klasifikasi pengkompil

pengkompil ialah program
pengkompil ialah program

Penyusun diklasifikasikan terutamanya mengikut ciri yang berkaitan dengan bidang aplikasi praktikal mereka.

Penyusun vektor ialah utiliti yang menterjemah kod sumber kepada kod objek dan disesuaikan untuk komputer yang dilengkapi dengan pemproses vektor.

Pengkompil fleksibel diprogramkan dalam bahasa peringkat tinggi dalam cara modular. Pengurusannya dijalankan menggunakan jadual. Ia juga mungkin untuk melaksanakannya menggunakan pengkompil penyusun.

Penyusun tambahan ialah pemproses bahasa yang menterjemah semula serpihan berasingan kod sumber dan penambahan padanya. Walau bagaimanapun, ia mengelak daripada menyusun semula keseluruhan aplikasi.

Penyusun tafsiran (melangkah) ialah utiliti yang secara berurutan melaksanakan kompilasi bebas bagi setiap pernyataan atau perintah kod sumber peringkat tinggi.

Penyusun penyusun ialah penterjemah yang mampu menerima penerangan rasmi untuk bahasa pengaturcaraan dan secara bebas menjana pengkompil untuk sebarang bahasa.

penyusun dan jurubahasa
penyusun dan jurubahasa

Pengkompil nyahpepijat membolehkan anda mencari dan membetulkan beberapa jenis ralat sintaks yang dibuat semasa menulis kod sumber

Penyusun pemastautin menduduki tempat tetap dalam RAM dan oleh itu boleh digunakan semula oleh pelbagai tugas.

Penyusun yang disusun sendiri ditulis dalam bahasa yang sama seperti terjemahan.

Pengkompil universal adalah berdasarkan penerangan rasmi parameter semantik dan sintaksis bahasa input. Komponen utama utiliti tersebut ialah pemuat teras, sintaksis dan semantik.

Peranti pengkompil

Penyusun dan penghubung adalah teras kepada mana-mana penyusun. Selalunya, apabila menyusun, pemaut luaran digunakan, dan pengkompil itu sendiri hanya melaksanakan fungsi terjemahan. Ia juga berlaku bahawa pengkompil dilaksanakan sebagai sejenis program pengurus yang dikaitkan dengan penterjemah (atau penterjemah, jika bahasa pengaturcaraan berbeza digunakan semasa menulis kod sumber) dan penyambung dan memulakan pelaksanaannya apabila perlu.

Bahasa pengaturcaraan dan kaedah terjemahan

penyusun bahasa
penyusun bahasa

Walaupun fakta bahawa program yang ditulis dalam mana-mana bahasa pengaturcaraan boleh disusun dan ditafsirkan, banyak bahasa peringkat tinggi mempunyai kecenderungan kepada satu atau kaedah terjemahan yang lain. Jadi, bahasa C pada asalnya direka untuk kompilasi, dan Java - untuk tafsiran program bertulis. Sedang dibangunkanPengkompil C agak mudah, terima kasih kepada tahap yang agak rendah dan bilangan elemen struktur yang kecil.

Kelebihan dan keburukan penyusun dan jurubahasa. Aplikasi

Perhatikan bahawa aplikasi yang disusun adalah lebih pantas daripada yang ditafsirkan, tetapi pada masa yang sama, kod mesin yang diperoleh hasil daripada penyusunan bergantung pada platform perkakasan. Jadi, program yang ditulis dan disusun untuk Windows tidak akan berfungsi, sebagai contoh, dalam Linux. Oleh itu, dalam kes aplikasi Internet, apabila mustahil untuk menyatakan terlebih dahulu dalam persekitaran mana mereka akan berfungsi, mereka menggunakan tafsiran atau kod bait (dalam kes ini, program sumber ditukar kepada bentuk perantaraan yang boleh dilaksanakan pada pelbagai perkakasan platform).

Disyorkan: