מטפחים את הדור הבא של פורצי הדרך במדע

יציאה מהעולם התיאורטי למעשי

שלום,

אני רוצה לספר על מעבדה שעשיתי בסמסטר האחרון. נושא המעבדה היה מיקרו מעבדים, כלומר מעבדים/מחשבים מזעריים.

בכל מכשיר חשמלי שאנחנו משתמשים יש רכיב כלשהו ששולט ומבקר על כל הפעולות שנעשות במכשיר. זה דבר מובן. אבל איך ניתן לתכנת את הרכיב הזה? ואיך מגדירים לו מה לעשות?

בשנים הקודמות למדנו איך מורכב רכיב כזה, על ידי כל מיני צירופים לוגיים שיוצרים סט של פעולות אותן הרכיב מסוגל לבצע (כגון: פעולות מתמטיות בין מספרים, קריאת ערכים מהזכרון, כתיבה לזכרון, וקפיצה לתא אחר). יש מקום בזכרון המכשיר שמשמש לאחסון הפקודות שהמכשיר צריך לבצע, והוא יודע לעבור פקודה אחר פקודה ולבצעה, ואם יש צורך לעבור לבצע פקודה אחרת.

מעבר לכך המכשיר מסוגל ליצור קשרים עם רכיבים פריפריאליים שמחוברים אליו, בכדי להוסיף תכונות, כמו: טיימר, קבלת מידע מהמשתמש, הוצאת מידע אל המשתמש ועוד.

ברמה הבסיסית ביותר המכשיר מקבל רצף של מספרים (0 או 1) ויודע לתרגם אותו לפעולה אותה הוא צריך לבצע. רצף מספרים זה נקרא שפת מכונה, ולאדם קשה עד בלתי אפשרי לכתוב קוד שלם של פעולות כאלה.

רמה מעל זה נמצאת שפת אסמבלר. בשפה זו האדם כותב במעין שמות קוד של הפעולות, וקיימת תוכנה שממירה את הקוד לשפת מכונה כך שמעבד ידע לקרוא את הקוד.

שפות התכנות המוכרות, כמו C Java, הן רמה עוד יותר גבוהה. שם ניתן לכתוב את הקוד בשפה שהרבה יותר קרובה לשפת האדם, והרבה יותר קריאה. גם כאן קיימת תוכנה שממירה את הקוד לשפת אסמבלר, ואחר כך לשפת מכונה.

במעבדה זו כתבנו קודים בשפת אסמבלר. למה להשתמש בשפה זו אם קיימת שפה יותר נוחה לשימוש? כי אם אנו יורדים לשפה יותר נמוכה, ניתן לשפר ביצועים של מהירות הפעולה וגודל הרכיב, כי אז משתמשים בדיוק במה שאנחנו מעוניינים ולא במבנים קבועים שנדרשים על מנת לתמוך בשפה גבוהה יותר. דבר זה הכרחי כשיש חשיבות קריטית לגודל ולמהירות.

במעבדה למדנו להכיר מעבד מסוים, שממנו ניתן להסיק על מעבדים אחרים. למדנו את הפעולות הבסיסיות שהוא מאפשר, וכן את הקישורים שלו אל רכיבים פריפריאליים אופייניים. בסיום הקורס אף עשינו פרויקט בו ביצענו ניסוי מכני כלשהו, ועל ידי המעבד קלטנו את התוצאות, עיבדנו אותן, והוצאנו אותם בחזרה אל המשתמש.

זו דוגמה של היציאה מתוך העולם התיאורטי אל העולם המעשי של המהנדס. נקווה שכעת, אם נתכנן איזה פרויקט הנדסי, נוכל לשלב בתוכו את המעבד המתאים לתפעולו בצורה היעילה ביותר.

כל טוב,

נתנאל

 


בקמפוס

סמסטר א' שנה ב'

סמסטר א' שנה ב'

האוניברסיטה העברית בירושלים

האוניברסיטה העברית בירושלים

המקצועות הנכללים במלגה אקלים אטמוספירה ואוקיאנוגרפיה הנדסת מחשבים הנדסת מחשבים בהתמחות...