Perbezaan Antara Assembler dan Compiler

Assembler vs Compiler

Secara umum, pengkompil adalah program komputer yang membaca program yang ditulis dalam satu bahasa, yang disebut bahasa sumber, dan menerjemahkannya ke bahasa yang lain, yang disebut bahasa sasaran. Secara tradisinya, bahasa sumber adalah bahasa peringkat tinggi seperti C ++ dan bahasa sasaran adalah bahasa tahap rendah seperti bahasa Asasi. 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 disebut bahasa sumber, dan diterjemahkan ke bahasa 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 tersebut. Pengkompil yang tipikal terdiri daripada beberapa komponen utama. Komponen pertama ialah pengimbas (juga dikenali sebagai penganalisis leksikal). Pengimbas membaca program dan menukarnya kepada rentetan token. Komponen kedua ialah parser. Ia menukarkan rentetan token ke dalam pokok parse (atau pokok sintaks abstrak), yang menangkap struktur sintaks program. Komponen seterusnya adalah rutin semantik yang mentafsirkan semantik struktur sintaksis. Pengoptimuman kod dan penentu 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 hubungan satu sama lain 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 debugging. 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, sedangkan assembler dapat dianggap sebagai jenis pengkompil khas yang hanya menerjemahkan bahasa Assembly ke kode 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 satu hingga satu pemetaan dengan kod mesin, penghimpun boleh digunakan untuk menghasilkan kod yang berjalan dengan sangat cekap untuk keadaan di mana prestasi sangat penting (misalnya enjin grafik, sistem terbenam dengan sumber-sumber perkakasan terhad berbanding dengan komputer peribadi seperti ketuhar gelombang mikro, mesin basuh, dan lain-lain).