Perbezaan Antara Assembler dan Compiler

Anonim

Assembler vs Compiler

Secara umum, pengkompil adalah program komputer yang membaca program yang ditulis dalam satu bahasa, memanggil bahasa sumber, dan menerjemahkannya ke bahasa yang lain, yang dipanggil bahasa sasaran. Secara tradisinya, bahasa sumber adalah bahasa peringkat tinggi seperti C ++ dan bahasa target adalah bahasa tahap rendah seperti bahasa Perhimpunan. Walau bagaimanapun, terdapat penyusun yang boleh menukar program sumber yang ditulis dalam bahasa Perhimpunan dan menukarnya kepada kod mesin atau kod objek. Pemasang adalah alat sedemikian. Oleh itu, kedua-dua pemasang dan penyusun akhirnya menghasilkan kod yang boleh dieksekusi secara langsung pada mesin.

Apa itu Penyusun?

Compiler adalah program komputer yang membaca program yang ditulis dalam satu bahasa, yang dipanggil bahasa sumber, dan menerjemahkannya ke bahasa yang lain, yang disebut bahasa target. Selalunya, bahasa sumber adalah bahasa peringkat tinggi dan bahasa sasaran adalah bahasa tahap rendah. Oleh itu, pengkompil umum boleh dilihat sebagai penterjemah yang menerjemahkan dari satu bahasa ke bahasa lain. Di samping itu, penyusun melakukan beberapa pengoptimuman pada kod itu. Pengkompil yang tipikal terdiri daripada beberapa komponen utama. Komponen pertama ialah pengimbas (juga dikenali sebagai penganalisis leksikal). Pengimbas membaca program itu dan menukarnya kepada rentetan token. Komponen kedua ialah parser. Ia menukarkan rentetan token ke pokok parse (atau pokok sintaks abstrak), yang menangkap struktur sintaks program. Komponen seterusnya adalah rutin semantik yang mentafsirkan semantik struktur sintaksis. Pengoptimuman kod dan penjanaan kod akhir mengikuti ini.

Apa itu Assembler?

Assembler adalah perisian atau alat yang menerjemahkan bahasa Perhimpunan kepada kod mesin. Oleh itu, penghimpun adalah sejenis pengkompil dan kod sumber ditulis dalam bahasa Perhimpunan. Perhimpunan adalah bahasa yang boleh dibaca manusia tetapi biasanya mempunyai satu hingga satu hubungan dengan kod mesin yang sesuai. Oleh itu, seorang penghimpun dikatakan melakukan terjemahan isomorfik (satu hingga satu pemetaan). Pemasang lanjutan menyediakan ciri tambahan yang menyokong proses pembangunan dan proses penyahpepijatan. Sebagai contoh, jenis pemasang yang dipanggil pemasang makro menyediakan kemudahan makro.

Apakah perbezaan antara Assembler dan Compiler?

Compiler adalah program komputer yang membaca program yang ditulis dalam satu bahasa dan diterjemahkan ke bahasa yang lain, sementara assembler boleh dianggap sebagai jenis pengkompil khas yang hanya menerjemahkan bahasa Perhimpunan kepada kod mesin. Penyusun biasanya menghasilkan kod luaran mesin secara langsung dari bahasa tingkat tinggi, tetapi pemasang menghasilkan kod objek yang mungkin perlu dikaitkan dengan menggunakan program penghubung untuk menjalankan mesin.Oleh kerana bahasa Asas mempunyai pemetaan antara satu sama lain dengan kod mesin, penghimpun boleh digunakan untuk menghasilkan kod yang berjalan dengan sangat cekap untuk keadaan di mana prestasi sangat penting (contohnya enjin grafik, sistem terbenam dengan sumber perkakasan terhad berbanding dengan komputer peribadi seperti ketuhar gelombang mikro, mesin basuh, dan lain-lain).