מהדר לעומת מתורגמן
מהדר ומתורגמן, שניהם בעצם משרתים את אותה מטרה. הם ממירים רמה אחת של שפה לרמה אחרת. מהדר ממיר את ההוראות ברמה הגבוהה לשפת מכונה בעוד שמתורגמן ממיר את ההוראה ברמה הגבוהה לצורת ביניים כלשהי ולאחר מכן, ההוראה מבוצעת.
Compiler
מהדר מוגדר כתוכנת מחשב המשמשת להמרת הוראות או שפה ברמה גבוהה לצורה הניתנת להבנה למחשב. מכיוון שהמחשב יכול להבין רק במספרים בינאריים ולכן נעשה שימוש בקומפיילר כדי למלא את הפער, אחרת היה קשה לאדם למצוא מידע בצורת 0 ו-1.
קודם לכן המהדרים היו תוכנות פשוטות ששימשו להמרת סמלים לביטים. גם התוכניות היו פשוטות מאוד והן הכילו סדרה של שלבים שתורגמו ביד לנתונים. עם זאת, זה היה תהליך שלוקח זמן רב. אז חלקים מסוימים היו מתוכנתים או אוטומטיים. זה יצר את המהדר הראשון.
תומכים מתוחכמים יותר נוצרים באמצעות הפשוטים יותר. עם כל גרסה חדשה, מתווספים לה עוד חוקים ונוצרת סביבת שפה טבעית יותר עבור המתכנת האנושי. תוכניות התואם מתפתחות בצורה זו, מה שמשפר את קלות השימוש שלהן.
יש ספקים ספציפיים לשפות או משימות ספציפיות. ספקים יכולים להיות מעבר מרובה או רב שלבי. המעבר הראשון יכול להמיר את השפה ברמה הגבוהה לשפה שקרובה יותר לשפת המחשב. אז המעברים הנוספים יכולים להמיר אותו לשלב סופי לצורך ביצוע.
מתורגמן
ניתן להפעיל את התוכניות שנוצרו בשפות ברמה גבוהה באמצעות שתי דרכים שונות.הראשון הוא השימוש במהדר והשיטה השנייה היא שימוש במתורגמן. הוראה או שפה ברמה גבוהה מומרת לאמצעי על ידי מתורגמן. היתרון בשימוש במתורגמן הוא שההוראה ברמה הגבוהה לא עוברת את שלב הקומפילציה שיכול להיות שיטה שלוקחת זמן. לכן, באמצעות מתורגמן, התוכנית ברמה הגבוהה מבוצעת ישירות. זו הסיבה שבגללה מתכנתים מסוימים משתמשים במתורגמנים בזמן יצירת קטעים קטנים, שכן זה חוסך זמן.
כמעט לכל שפות התכנות ברמה גבוהה יש מהדרים ומתורגמנים. אבל שפות מסוימות כמו LISP ו-BASIC מתוכננות בצורה כזו שהתוכנות שנוצרות באמצעותן מבוצעות על ידי מתורגמן.
הבדל בין מהדר למתורגמן
• ספק ממיר את ההוראה ברמה הגבוהה לשפת מכונה בעוד שמתורגמן ממיר את ההוראה ברמה הגבוהה לצורת ביניים.
• לפני ביצוע, התוכנית כולה מבוצעת על ידי המהדר, בעוד שלאחר תרגום השורה הראשונה, מתורגמן מבצע אותה וכן הלאה.
• רשימת שגיאות נוצרת על ידי המהדר לאחר תהליך הקומפילציה בעוד שמתורגמן מפסיק לתרגם לאחר השגיאה הראשונה.
• קובץ הפעלה עצמאי נוצר על ידי המהדר ואילו מתורגמן נדרש על ידי תוכנית מפורשת בכל פעם.