Lecture 1 Flashcards
Bus
ערוץ תקשורת פנימי שדרכו עובר מידע בין היחידות השונות.
רוחבו מכתיב את מהירותו (לדוגמה, 64bits)
CPU
CPU - Central Proccing Unit -
יחידת עיבוד מרכזית: אוסף רכיבים ומעגלים אלקטרוניים המנהלים את פעילות המחשב.
יחידה זו מבצעת הבאת פקודות מהזיכרון, פענוחן, וביצוען.
RAM memory
זיכרון ראשי:
• בו נשמרים הנתונים והפקודות של התכניות בזמן ביצועם.
• מהיר – Random-Access-Memory
• המידע ברובו אינו נשמר כאשר מכבים את המחשב
זיכרון משני
cdrom, disk on key, hard disk
• עליו נשמרים מידע משני שאינו נחוץ לפעולות המחשב המידיות
• בעת הצורך מועבר מידע מהזיכרון המשני לראשי ולהפך
• המידע בזיכרון המשני נשמר עד אשר מוחקים אותו
I/O devices
אמצעי קלט ופלט:
התקני חומרה כדוגמת מקלדת, עכבר, מסך, מצלמה, מדפסת, אמצעי תקשורת וכיו”ב שבאמצעותם נקלטים נתונים הנחוצים לתכניות שמריץ המחשב ומוצגים (פלט) נתונים שמייצרות תכניות אלו.
Moore Law
Moore’s law is the observation that the number of transistors in a dense integrated circuit doubles approximately every two years.
CPU :קצב עבודה
מחזורי הפקודות מבוצעים תחת פיקוחו של השעון הפנימי. מקובל לכן
למדוד את מהירות ה – CPU
על פי תדירות השעון (מספר הפעימות בשנייה)
דוגמאות:
1 .II Apple 1MHz ( ~מיליון תקתוקי שעון בשנייה)
2 .מחשב 486 משנת 93 :’כ- 33MHz) 33) מיליון בשנייה
3 .מחשבי IV Pentium :5GHz.3 (כשלושה וחצי מיליארד בשנייה)
4 .טלפון סלולארי נוקיה 6680 :280MHz.
.800MHz : Apple של iPhone 4S .5
ALU
Arithmetic Logic Unit יחידה אריתמטית לוגית - זוהי יחידת החישוב המבצעת – פעולות אריתמטיות (חיבור, כפל, ...) – פעולות לוגיות (OR, AND.) – השוואת נתונים הנמצאים בזיכרון הראשי או ברגיסטרים.
רגיסטרים
(אוגרים): מספר יחידות זיכרון שהגישה אליהן מהירה
במיוחד (מעין RAM מקומי וקטן בתוך ה-CPU.)
– אחד הרגיסטרים משמש כ-counter program (המציין מהי הפקודה
הבאה לביצוע).
bit
בעברית - סיבית
הינה יחידת המידע הקטנה ביותר של הזיכרון במחשב.
– סיבית מקבלת ערכים בינאריים, כלומר 0 או 1.
bytes
זיכרון - מאורגן בבתים בני 8 סיביות
בית: יחידת הזיכרון הקטנה ביותר בעלת כתובת
ניתן לפרש סדרה כזו כמספר הכתוב בבסיס 2
משמעויות נוספות שיתכנו: חלק מפקודה, ועוד.
זיכרון ראשי
התקן זיכרון קטן (יחסית לדיסק) שהגישה אליו מהירה - הזיכרון הראשי בנוי משבבי זיכרון
chips
שבבי זיכרון
Software
תוכנה
• תוכנית מחשב הינה סדרת פקודות שנועדו לבצע משימה
מסוימת.
• פקודות התוכנית, בשעת ריצתה, נמצאות בזיכרון הראשי.
• ב-CPU יש מנגנון אשר באופן סידרתי קורא פקודה, מפענח
אותה ומבצעה.
• הפקודות מבוצעות בזו אחר זו, לפי סדר ישיבתן בזיכרון,
למעט פקודות הסתעפות.
מערכת ההפעלה
• מערכת הפעלה – תוכנה (אוסף תוכניות) אשר:
מפקחת על ומנהלת את המחשב על התקניו, משאביו ומשימותיו.
מאתחלת ביצוע משימות (תוכניות).
מקצה משאבים למשימות (תוכניות).
• מערכת ההפעלה מתווכת בין התוכנה לחמרה.
• כשמחשב דלוק, מערכת ההפעלה בפעולה ומשרתת אותנו.
• דוגמאות - אנדרואיד, MSDOS, WINDOWS,
שפת מכונה
השפה שמבין ה-CPU והיא משתנה בין מחשב למחשב
שפות מכונה מכילות פקודות בסיסיות מהסוגים הבאים:
– העברת נתונים בין הרגיסטרים ותאי הזיכרון.
– פעולות אריתמטיות ולוגיות.
– קפיצות והסתעפויות מותנות.
שפת מכונה הינה שפה בינארית
שפת אסמבלי(סף)
ייצוג סמלי של שפת מכונה
אסמבלר
תכנית המתרגמת פקודות שפת סף לשפת מכונה בינארית
שפה עילית
שפה עילית Pascal, Fortran, C++, Java, C, Python -דמוית אנגלית -פקודות מורכבות יותר מפקודות מכונה -תוכנית בשפה עלילית מתאימה לריצה על מחשבים שונים ואינה תלויה בשפת המכונה של מעבד ספציפי
Compiler
מהדר - תוכנית המתרגמת תכניות משפה עילית לתכניות בשפת מכונה של מעבד נתון
את הקוד המכונה קובץ הרצה המתקבל ניתן להריץ פעמים רבות
שלב התרגום
- כתיבת תוכנית בשפה עילית prog.c
- מהדר compiler
- מקבלים תוכנית בשפת מכונה prog.exe
- שגיאות הידור אם יש נקראות compilation errors כלומר שגיאות בזמן תרגום = קומפילציה
שלב ההרצה
- תוכנית בשפת מכונה prog.exe
- קלט לתוכנית input
- פלט התוכנית output
- שגיאות הרצה אם יש נקראות runtime errors כלומר שגיאות בזמן הריצה
שפת C - רקע
• פותחה ע”י דניס ריצ’י (Ritchie Dennis) בשנות ה-70 של המאה ה-20
• במקור יועדה לכתיבת מערכת הפעלה (UNIX) ומהדר (Compiler)
• זוהי שפה יעילה המאפשרת כתיבה עילית וירידה לפרטים ברמת
הביטים (אם רוצים זאת)
• בשימוש נרחב במגוון יישומים הנדסיים.
• שפה זו הינה הבסיס ל- ++C ,ל- Java ,ול-Ada.
• קל לשגות בה, וקשה לאתר ולתקן שגיאות אלה.
– הרגלים נכונים בתכנות משפרים את המצב, ממש!
הערות - comments
טקסט בתוך
/* … */
ההערה מתחילה בצירוף */ ומסתיימת בצירוף /
הערה יכולה להשתרע על פני מספר שורות
לפי תקן C99 הערה היא גם טקסט שבא אחרי // עד לסוף השורה
דוגמאות
/ In this part of the program we handle the
computation of the final grades. */
// This is a comment
a = b + c; // This is another comment