51
משרד החינוך מנהל מדע וטכנולוגיה מגמת הנדסת תוכנה כללי הבחינה במדעי המחשב נמנית עם בחינות הבחירה המחייבת. אפשר להיבחן במדעי המחשב בהיקף של3 יח"ל ובהיקף של5 יח"ל. הבחינה בהיקף של3 יח"ל מורכבת מן השאלונים שמספריהם106 + 106 . הבחינה בהיקף של5 יח"ל מורכבת מן השאלונים שמספריהם106 + 106 + 103 . כדי לקבל ציון סופי במקצוע מדעי המחשב יש לקבל55 נקודות לפחות בכל אחד מן השאלונים106 ו- 103 . תכנית הלימודים במדעי המחשב מובאת בדפים שלפניכם, וכן באתרי האינטרנט האלה: אתר מדעי המחשב וטכנולוגיות מידע, שכתובתו היאcsit.org.il w. http://ww , אתר משרד החינוך, אתרי משפחת או"ח ואתר המפמ"ר למדעי המחשב. יש להיכנס לאתרים אלה, ולהתעדכן בתכנית הלימודים. באתרים אלה יש גם דוגמאות של בחינות בגרות. מדעי המחשב

³¡¨ - cms.education.gov.ilcms.education.gov.il/NR/rdonlyres/D8844943-D6DF-4D20-B3AB-F946018A9F6C/... · ´¡ £¡ / ³¡¨ ¨ 3 while-ו תואלולfor •-then else יאנת

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

משרד החינוך

מנהל מדע וטכנולוגיה

מגמת הנדסת תוכנה

כללי

.בחינות הבחירה המחייבתהבחינה במדעי המחשב נמנית עם

יח"ל. 5יח"ל ובהיקף של 3אפשר להיבחן במדעי המחשב בהיקף של

.106 + 106יח"ל מורכבת מן השאלונים שמספריהם 3הבחינה בהיקף של

.103 + 106 + 106 השאלונים שמספריהם יח"ל מורכבת מן 5הבחינה בהיקף של

106נקודות לפחות בכל אחד מן השאלונים 55יש לקבל מדעי המחשבכדי לקבל ציון סופי במקצוע

.103-ו

תכנית הלימודים במדעי המחשב מובאת בדפים שלפניכם, וכן באתרי האינטרנט האלה: אתר מדעי

, אתר משרד החינוך, אתרי משפחת csit.org.ilw.http://wwהמחשב וטכנולוגיות מידע, שכתובתו היא

או"ח ואתר המפמ"ר למדעי המחשב.

יש להיכנס לאתרים אלה, ולהתעדכן בתכנית הלימודים.

באתרים אלה יש גם דוגמאות של בחינות בגרות.

מדעי המחשב

2

כללי

יסיימו את לימודי 'מבוא למדעי המחשב'. אחתהנבחנים בהיקף של יחידת לימוד

יחידות 6יח"ל יהיו רשאים להשתלב בלימודי מדעי המחשב בהיקף של 3נבחנים שירצו להיבחן בהיקף של

פי תכנית הלימודים המחייבת.-לימוד נוספות, על

.5-ו 4הפרקים מבין – חדא, ופרק בחירה 3-ו 6, 6 –פרקי חובה שלושהבשאלון

הכרת המחשב :1פרק

מקלדת ועכבר, צג, מדפסת –; אמצעי קלט ופלט RAMמעבד, זיכרון –המחשב מהו: מבנה המחשב •

והתקנים נוספים )מודם, כרטיס קול, צורב, סורק וכדומה(

כונן תקליטורים אמצעי זיכרון חיצוניים: כונן תקליטונים ותקליטון מגנטי; תקליטון )דיסק( קשיח; •

(DVD ROM-CD,) ותקליטור

הפעלת המחשב ושימוש במערכת ההפעלה: התנסות בפעולות בסיסיות כגון טעינת קובץ, שמירת קובץ, •

שימוש בתפריטים, העתקת קבצים, שמירה בתקליטון או בתיקייה, מחיקת קבצים

שימוש בעורך •

מושגי יסוד במדעי המחשב :2פרק

תיו, אלגוריתם מילולי ככלי להצגת פתרון לבעיה, תרשים זרימה, אימות האלגוריתם אלגוריתם ותכונו

ידי שימוש בטבלת מעקב, הצגת פתרון לבעיה נתונה באמצעות עידון הדרגתי-על

: יסודות התכנות א' 3פרק

ות התכנית הכללית, הוראות קלט ופלט, סוגי נתונים ומשתנים )כולל מחרוזות(, הדפסת כותרות, הורא

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

יסודות התכנות ב' :4פרק

עקרונות התכנות המובנה, שגרה ללא פרמטרים •

מבני בקרה •

נושאי הלימוד במדעי המחשב

יחידת לימוד אחת

101שאלון מספר

מדעי המחשב / יחידה אחת

3

WHILE-ו FORת לולאו •

IF-THEN-ELSEמשפטי תנאי •

כלי תוכנה ויישומיהם :5פרק

פרק חובה –הגיליון האלקטרוני הכרת •

של התכנית, הכנסת מידע לגיליון ודפדוף בו (Help)הכרת הגיליון ותכונותיו, שימוש בעזרה •

; הפונקציות MOVE-ו COPYהפקודות –יישומים חישוביים בגיליון: הכנסת נוסחאות פשוטות •

INT, MIN, MAX, AVG, SUM, COUNTא כתובות מעורבות(; הוראת ; כתובות יחסיות ומוחלטות )לל

IF בסיסית; טעינה ושמירה

ודפדוף בו; עדכון מידע, הדפסת הכרת מסד מידע: הכרת מסד המידע ותכונותיו, הכנסת מידע למסד •

ח, טעינה ושמירהדו

הכרת התמלילן: הכרת התמלילן ותכונותיו, כתיבה ועריכה, הדפסה, טעינה ושמירה •

המחולל הגרפי ותכונותיו, ציור ועריכת סרטוט, הדפסה, טעינה ושמירה הכרת הסביבה הגרפית: הכרת •

הכרת מסד המידע ותכונותיו, הכנסת מידע למסד ודפדוף בו; עדכון מידע, הדפסת הכרת מסד המידע: •

דוח, טעינה ושמירה

ה הכרת התמלילן ותכונותיו, כתיבה ועריכה; הדפסה; טעינה ושמירה; הכרת הסביב הכרת התמלילן: •

הגרפית; הכרת המחולל הגרפי ותכונותיו, ציור ועריכת סרטוט; הדפסה; טעינה ושמירה

כללי

יח"ל, צריכים להיבחן בשני שאלונים: בשאלון 3נבחנים המעוניינים להיבחן במדעי המחשב בהיקף של

.106המפורט להלן, וכן בשאלון מספר 106מספר

נקודות לפחות בשאלון מספר 55יח"ל, יש לקבל 3בהיקף של מדעי המחשבל ציון סופי במקצוע כדי לקב

106

נושאי הלימוד במדעי המחשב

יח"ל( 3-יחידות לימוד )השלמה ל 2

102שאלון מספר

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

4

: מבוא1פרק

הכרה ראשונית )בפרט לתלמידים שלא למדו מדעי המחשב בחטיבת הביניים( של תחום מדעי המחשב והשפעתו יעדים:

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

מבוסס עצמים.

תכנים

שונים. ידע חישוביים מתחומי באתגרים דיון י"ע המחשב מדעי מקצוע של ומקומו חשיבותו הדגמת

ניסוח אלגוריתמי של פתרון אפשרי., משימהניתוח המשימות חישוביות פשוטות: הכרת

.הכרת המושג שפת תכנות

ה, ותיקון תכניות פשוטות.בדיקה, הרצה, כתיבכנית: קריאה, הכרת מושג הת

מחלקה ופעולתmain .כמסגרת בסיסית לכתיבת תכנית

.הכרת מושג העצם

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

פקודת באמצעות עצמים יצירתnew.

ולות על עצמים.זימון וביצוע פע

1מטרות ביצועיות

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

.התלמיד יקבל משימה מילולית פשוטה; התלמיד יתכנן ויכתוב אלגוריתם שפותר אותה בשפה כללית

.התלמיד יממש את האלגוריתם ע"י כתיבת תכנית

לקה, פעולת התלמיד יתאר את המבנה הבסיסי של תכנית: מחmain .

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

לפתהתלמיד יפעיל פעולות בסיסיות של סביבת הפיתוח בה משתמשים בתכנית הלימודים ויוכל

הנושאים שמופיעים בסעיף "מטרות" מתארים שאלות אפשריות בבחינות.ככלל, 1

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

5

: מושגי יסוד בתכנות2פרק

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

המשך עבודה עם עצמים ממחלקות מוכנות.

תכנים

אלגוריתם

ה.משתנהכרת המושג

:שלםטיפוסי נתונים בסיסיים (int) , ועשרוני(double).

הערכים של טיפוסי הנתונים לעיל. תחומי

פקודות השמה.

.הגדרת ואתחול משתנים

רים חשבוניים: חיבור, חיסור, כפל, חילוק, שארית.אופרטו

:פונקציות מתמטיות בסיסיותabs, max, min, pow, random, round, sqrt

סדר קדימויות האופרטורים ותפקיד הסוגריים.ביטויים חשבוניים :

הנתונים בין טיפוסי בסיסית המרהint ו- double

.פעולות ככלי לעידון וחלוקת משימות

וכתיבת פעולת עזר הגדרת(private method).

( הגדרת פרמטרים, והעברה לפי ערךcall by value.)

ערך מאוחזר(return value).

ריצה.-שגיאות לוגיות, שגיאות תחביר, שגיאות בזמן

.פעולות קלט / פלט פשוטות

.טבלת מעקב

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

1

מטרות ביצועיות

בת תכנית.התלמיד יסביר את המושג "אלגוריתם" והקשר שלו לכתי

.התלמיד יגדיר את סוגי ושמות המשתנים שמתאימים למשימה מילולית נתונה

.התלמיד יסביר מהו משתנה וכיצד הוא מיוצג בזיכרון המחשב

.התלמיד ינסח ויעקוב אחר פעולות השמה

התלמיד יסביר את הצורך והשוני בין טיפוסי הנתוניםint ו- double.

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

.התלמיד יתרגם תיאור משימה חישובית מילולית לביטוי חשבוני תקין

.התלמיד יממש משימות חישוב שכוללות ניסוח ביטויים חשבוניים

.התלמיד יסביר )באופן בסיסי בלבד( את הצורך בהמרה בין טיפוסי נתונים שונים

שימות קטנות.התלמיד יסביר את הצורך בחלוקת משימה מורכבת למ

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

.התלמיד יקבל קטע קוד מסורבל וידע לחלקו לפעולת עזר אחת או יותר

."התלמיד ידע להסביר את המונח "העברה לפי ערך

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

שכולל את זימון הפעולה.

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

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

7

: ביצוע מותנה3פרק

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

. משימה חישובית ומימושה; העמקת ההבנה של עבודה עם משתנים

תכנים

טיפוס הנתוניםboolean.

.יחסים: שווה, שונה, גדול, קטן, גדול או שווה, קטן או שווה

בהקשר של ערכים עשרוניים. =! -בעייתיות השימוש ביחסים == ו

פונקציות בוליאניות(not, and, or) .וטבלאות האמת שלהן

ות.ביטויים בוליאנים פשוטים, מורכבים, וסדר הפעולות הבוליאני

ביצוע מותנה :if

ביצוע מותנה :if .. else

.תקינות קלט, מסננת קלט פשוטה הכוללת תנאי בלבד

מטרות ביצועיות

.התלמיד ייחשב את הערך של ביטויים בוליאניים נתונים ויבחין בסדר הפעולות הבוליאני

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

קשרים לוגיים עם או בלי סוגריים.

התלמיד יתרגם משימות מותנות מילוליות לקטעי קוד שכוללים תצורות שונות של מבניif ו- if … else.

.התלמיד יגדיר / יכתוב משפט תנאי מקונן בשלוש רמות לפחות

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

.התלמיד יממש מסננת קלט פשוטה

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

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

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

8

: ביצוע חוזר4פרק

לעידון אלגוריתמים; להבחין הבנה ומימוש של אלגוריתמים בסיסיים לביצוע חוזר; לתרגל ביצוע חוזר ככלי יעדים:

בין כתיבה אלגוריתמית של לולאה לבין מימושה בשפת תכנות; הכרה בסיסית של המושגים נכונות ויעילות של

אלגוריתמים; העמקת הידע של כתיבת, תיעוד, ותיקון תכניות; להשתמש בלולאות לאלגוריתמים המצריכים מנייה או

צבירה.

תכנים

.ביצוע חוזר

לולאתfor.

לולאת while.

מסננת קלט

.משימות חישוב טיפוסיות: מונים, צוברים, ערכי קיצון

.תנאי סיום

.ביצוע אינסופי

.ניתוח נכונות בעזרת טבלת מעקב

ע"י ספירת איטרציות. יעילותניתוח

קינון ושילוב מבניif, for, while

.תיעוד

מטרות ביצועיות

צוע חוזר.התלמיד יזהה בעיות שפתרונן דורש בי

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

התלמיד יבחין בין בעיה שפתרונה דורש ביצוע חוזר באורך ידוע מראש לבין בעיה שפתרונה דורש ביצוע חוזר

מותנה.

התלמיד יסביר את הצורך במבנה הבקרהfor .ואת דרך פעולתו

מיד יסביר את הצורך במבנה הבקרה התלwhile .ואת דרך פעולתו

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

9

.התלמיד יתרגם תיאור משימות מילוליות לאלגוריתמים שמבוססים על ביצוע חוזר

.התלמיד יעקוב אחר קטעי קוד של ביצוע חוזר בעזרת טבלת מעקב

.התלמיד יסביר את הצורך בתנאי הסיום של לולאה מותנית

ת בעלות ביצוע חוזר אינסופי.התלמיד יזהה ויסביר לולאו

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

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

התלמיד יכתוב, יבדוק, ויריץ תכניות שמבוססות על מבני הבקרהfor, while

ון ושילוב לולאות מסוגים שונים.התלמיד יפתור בעיות הדורשות קינ

.התלמיד יתעד את התכניות שהוא כותב

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

10

: מבני נתונים סדרתיים5פרק

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

ומימוש אלגוריתמי חיפוש, מיון ומיזוג.

תכנים

ונים בסיסייםמערכים של טיפוסי נת

מושגי יסוד בעבודה עם מערכים: מציין )אינדקס(, אורך(length) גישה ,(x[i])

ת ואתחול מערכיםהגדר

:אלגוריתמים טיפוסיים

o חיפוש סדרתי

o חיפוש בינארי

o מיון הכנסה

o מיזוג

o דיון והשוואת יעילות האלגוריתמים

:מערך של עצמים

o השימוש בפעולה( בניית מערך עצמיםnew)

מימדי-לתכונה של עצם במערך דו גישה

מטרות ביצועיות

התלמיד ידע להסביר את הצורך במבנה נתונים סודר

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

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

מיד יסביר מה מתרחש מאחורי הקלעים כשהפקודה התל int[] x = new int[n].מתבצעת

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

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

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

11

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

.התלמיד ינתח באופן לא פורמלי את יעילות החיפוש הלינארי ואת יעילות החיפוש הבינארי במערך ממוין

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

התלמיד יכתוב פעולה שממזגת שני מערכים ממוינים .

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

הפעולה של הקוד.

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

המשימה.

ממדי ריבועי או מלבני-התלמיד יגדיר מערך דו

ממדי, תוך שימוש מורכב במציינים. פעולות -תלמיד יבצע פעולות גישה לתא במערך )עצם או תכונה פשוטה( דוה

הגישה יכללו:

o פעולות על האלכסון הראשי והמשני

o 'סריקת המערך לפי שורות, לפי עמודות, 'בשבלול

o הפיכת מערך

מדי. התלמיד יסביר את דרך הפעולה של מי-התלמיד יקבל קטע קוד שכולל הגדרה, איתחול, ועיבוד של מערך דו

הקוד.

מימדי. התלמיד יממש את -התלמיד יקבל משימה מילולית שדורשת הגדרה, איתחול, ועיבוד פשוט של מערך דו

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

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

: תכנות מונחה עצמים1פרק

מבוא לתכנות מונחה עצמים וכתיבת מחלקות. יעדים:

תכנים

.חזרה: יצירת והפעלת עצמים תוך שימוש בממשק מחלקה נתון

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

יסוד: תכונות, בנאים, פעולות )שאילתות / פקודות(.מושגי

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

12

.מצב העצם / מצב מצב תקין

.הכמסה: חשיבות העיקרון ודרך מימושו באמצעות הרשאות גישה וכתיבת פעולות מתאימות

עצמים שאינם ניתנים לשינוי(immutable objects).

.תנאי קדם / תנאי בתר

.מחלקות המשתמשות במחלקות אחרות

ממשק נתון לפי תכנות בשפת מחלקהמימוש .

.תיעוד ממשקים

.כתיבת תכניות בדיקה ידניות ואוטומטיות

מטרות ביצועיות

.התלמיד יקבל ממשק מחלקה, מימוש של המחלקה, ומשימה מילולית שדורשת יצירה והפעלה של מספר עצמים

התלמיד יממש את המשימה ע"י כתיבת קוד שמשתמש בשירותי המחלקה.

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

.התלמיד יסביר את עקרון ההכמסה ויתאר כיצד הוא בא לידי מימוש בקוד מחלקה נתון

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

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

מתכונותיהם הוא מחלקה.

.התלמיד יתאר מהו מצב "מצב תקין" של עצם וכיצד הוא בא לידי ביטוי בהינתן תיאור מילולי של בעיה

.התלמיד יתאר מהם תנאי קדם ותנאי בתר וכיצד הם באים לידי ביטוי בהינתן תיאור מילולי של בעיה

חלקה, התלמיד יתכנן ויכתוב תכניות בדיקה ידניות ואוטומטיות.בהינתן ממשק מ

.התלמיד יתעד תכניות

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

13

כללי

יח"ל, צריכים להיבחן בשלושה שאלונים: בשאלון 5נבחנים המעוניינים להיבחן במדעי המחשב בהיקף של

.106 , וכן בשאלון מספר106, בשאלון מספר 103מספר

נקודות לפחות בכל אחד מן 55יח"ל, יש לקבל 5בהיקף של מדעי המחשבכדי לקבל ציון סופי במקצוע

.103-ו 106השאלונים שמספריהם

בשאלון הזה שתי יחידות לימוד:

)יחידת חובה(מבני נתונים –היחידה הרביעית

מבין פרקי הבחירה האלה: באחדהנבחנים יבחרו –היחידה החמישית

מודלים חישוביים •

תכנות מונחה עצמים •

מבוא לחקר ביצועים •

מערכות מחשב ואסמבלר •

מבני נתונים

(4)יחידת לימוד

היחידה עוסקת בעיקר בבניית ועיבוד מבני נתונים )מחסנית, תור, עץ בינארי(, בשימוש מושכל בהם, ובמימושם בעזרת

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

ומורכבים.

נושאי הלימוד במדעי המחשב

יח"ל( 5-יחידות לימוד )השלמה ל 2

103שאלון מספר

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

14

רקורסיה ויעילות. החומר שנלמד בשני –בנוסף, היחידה כוללת שני פרקי מבוא בעלי חשיבות כללית במדעי המחשב

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

נושאי הלימוד מחולקים לשבעה פרקי חובה, כדלקמן:

פרק פרמס

שם הפרק

:4יחידת לימוד

מבני נתונים

רקורסיה 6

מבוא ליעילות 6

מחסנית 3

תור 4

רשימה מקושרת 5

מימוש מבני נתונים 1

עצים בינאריים 7

סביבת העבודה

.C#-ווה ושפות התכנות האפשריות ביחידה זו הן ג'א

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

או אחר.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

15

: רקורסיה1פרק

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

בעיות ופתרונן בעזרת רקורסיה.

ניםתכ

הגדרה רקורסיבית, תנאי עצירה, קריאה רקורסיבית .6

חזור, רקורסיה כפולה, רקורסיה הדדית.-רקורסיית זנב, רקורסיית הלוך .6

f(n-1) -ו f(n)מעקב רקורסיבי ברמה של .3

כתיבת תכניות רקורסיביות. .4

מטרות ביצועיות

f(n-1) -ו f(n)התלמיד יעקוב אחר תהליך רקורסיבי וירשום את סדר המעקב במונחים של .6

חזור.-התלמיד יבחין בין סוגי רקורסיות: זנב, הדדית, כפולה, הלוך .6

ממדיים.-ודו -התלמיד יכתוב תכניות רקורסיביות פשוטות שפועלות על מספרים, סדרות, מערכים חד .3

התלמיד יסביר את יתרונות הרקורסיה: פשטות הפתרון, הוכחת נכונות. .4

יה: צריכת משאבי מקום וזמן.התלמיד יסביר את חסרונות הרקורס .5

התלמיד יסביר מדוע אין בעיה הניתנת רק לפתרון רקורסיבי. .1

רקורסיביים, ויפתור בעיות על מבנים רקורסיבים. התלמיד יפגין הבנה של מבנים .7

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

11

: מבוא ליעילות2פרק

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

ריצה. בפרט, נכיר את מושגי -(; )ב( הכרת מושג היעילות וחשיבותו במדעי המחשב, וזאת דרך הכרת מדדי זמן6-6)י"ל

"המקרה הממוצע". כמו כן נכיר את מושג -היעילות הבסיסיים "המקרה הגרוע ביותר", "המקרה הטוב ביותר", ו

גדול(. המושגים הללו ילמדו Oנקציה של אורך הקלט, ואת המושג "סדר גודל" )אורך הקלט ואת מושג היעילות כפו

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

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

מיזוג.-ומיון

מטרות ביצועיות

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

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

ריצה.-זמן

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

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

ביחידת הלימוד הנוכחית.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

17

: מחסנית3פרק

כרת שימושים ; ה(stack)הכרת המושג "טיפוס נתונים מופשט"; הכרת טיפוס הנתונים המופשט "מחסנית" יעדים:

; הכרת מושג הגנריות והשימוש בו.(API)נפוצים במחסנית; תרגול עבודה מול ממשק מחלקה

תכנים

טיפוס נתונים מופשט

,מחסניתLIFO

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

גנריות

מטרות ביצועיות

התלמיד יסביר מהו טיפוס נתונים מופשט. .6

ושימושיו. (Stack)את טיפוס הנתונים המופשט מחסנית התלמיד יסביר .6

LIFOהתלמיד יבנה ויעבד מחסנית כדי לפתור בעיות המאופיינות ע"י תבנית .3

Stackהתלמיד יסביר את הממשק של מחלקת .4

.Stackהתלמיד יפגין יכולת לכתוב קוד שמשתמש כהלכה בשירותי ממשק מחלקת .5

התלמיד יסביר את מושג הגנריות. .1

<Stack<Tתלמיד יפגין יכולת לכתוב קוד שמשתמש כהלכה בשירותי ממשק מחלקת ה .7

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

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

18

: תור4פרק

; הכרת שימושים נפוצים בתור; תרגול עבודה מול ממשק (queue)הכרת טיפוס הנתונים המופשט "תור" יעדים:

נתון. Queueלקת מח

תכנים

FIFOתור,

מטרות ביצועיות

התלמיד יסביר את טיפוס הנתונים המופשט הגנרי "תור" ואת שימושיו. .6

FIFOהתלמיד ישתמש בתור כדי לפתור בעיות המאופיינות ע"י תבנית .6

ואת דרכי העבודה מולו. <Queue<Tהתלמיד יסביר את משמעות הממשק .3

שפתרונן מצריך מחסנית לבעיות שפתרונן מצריך תור.התלמיד יבדיל בין בעיות .4

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

19

: רשימה מקושרת5פרק

או "רשימה" בקיצור, ושימושיו הרבים; מימוש רשימות (linked list)הכרת מבנה הנתונים "רשימה מקושרת" יעדים:

ואלגוריתמים על רשימות.

תכנים

המושגים מצביע, הפנייה, חוליה, ורשימה. .6

בניית ועיבוד רשימות .6

BinNode -ו Nodeמחלקות .3

הקצאת זיכרון סטטית ודינמית .4

מטרות ביצועיות

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

התלמיד יקבל תרשים של רשימה ויזהה בו דוגמאות למצביע, הפנייה, חוליה, ורשימה. .6

.newך ביצוע פעולת התלמיד יסביר באופן מדויק מה מתחולל מאחורי הקלעים במהל .3

התלמיד יממש אלגוריתמים איטרטיבים ורקורסיבים לעיבוד רשימות: מעבר על רשימה, הוספת, ביטול, וחיפוש .4

חוליה לפי ערך או לפי מקום.

התלמיד ינתח את יעילות האלגוריתמים הללו. .5

התלמיד יסביר את היתרונות והחסרונות של עבודה עם רשימה לעומת עבודה עם מערך. .1

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

כדי לממש ולעבד רשימות. BinNode -ו Nodeהתלמיד ישתמש בממשקים של מחלקות .8

התלמיד יסביר את ההבדלים בין הקצאת זיכרון סטטית )מערכים( להקצאת זיכרון דינמית )רשימות(. .9

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

20

נים: מימוש מבני נתו1פרק

וברשימות מקושרות. בפרק זה "נפתח את (ADT's) בפרקים הקודמים עסקנו בטיפוסי נתונים מופשטים יעדים:

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

ורשימות. כמו כן נממש מבני נתונים מורכבים, כגון מערך של רשימות.

ניםתכ

מימוש של טיפוסי נתונים מופשטים .6

הבנה שלהפשטה נתונה יכולים להיות מימושים אלטרנטיבים, ללא שינוי ההפשטה .6

מימוש הטיפוסים תור ומחסנית באמצעות מערך .3

מימוש הטיפוסים תור ומחסנית באמצעות רשימה .4

יעילות המימושים השונים .5

מוש באמצעות רשימה" הכוונה לרשימה המיוצגת ע"י הערה: בפרק זה, כמו בפרק הקודם, כשאנו אומרים "מי .1

. אין צורך להשתמש בשום מחלקה נוספת לייצוג הרשימה. Nodeשרשור חוליות שהן מופעים של מחלקת

מטרות ביצועיות

התלמיד יסביר את ההבדלים בין שימוש במבנה נתונים מופשט, לבין מימושו. .6

מופשט בדרכים שונות.התלמיד יסביר כיצד ניתן לממש טיפוס נתונים .6

התלמיד יממש מחסנית ותור באמצעות מערכים ורשימות )שני מימושים אלטרנטיבים( .3

התלמיד יסביר את היתרונות והחסרונות של מימושים שונים. .4

התלמיד יממש מבני נתונים מורכבים כגון מערך של רשימות ומערך של תורים. .5

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

21

: עצים בינאריים7פרק

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

תכנים

המבנה והמינוח של עצים. .6

מושג החוליה הבינארית כאבן בנייה בסיסית של עצים בינאריים. .6

אלגוריתמי סריקה של עצים בינאריים. .3

עץ חיפוש בינארי: מבנה הנתונים ואלגוריתמים רלבנטיים. .4

ניתוח יעילות האלגוריתמים. .5

ועיותמטרות ביצ

התלמיד יקבל תרשים של עץ וידע לזהות בו רכיבים שונים כגון שורש, עלה, מסלול, וכדומה. .6

התלמיד יקבל תרשים של עץ ויכתוב קטע קוד שבונה את העץ ע"י יצירת ושרשור חוליות בינאריות, תוך שימוש .6

נתונה. BinNodeבממשק מחלקת

ייצג ולחשב ביטוי חשבוני נתון.התלמיד יסביר איך ניתן להשתמש בעץ בינארי כדי ל .3

.pre-order, in-order, post-orderהתלמיד יסביר את המושגים .4

. (breadth first)וסריקת רוחב (depth first)התלמיד יממש אלגוריתמי סריקה שונים של עצים: סריקת עומק .5

האלגוריתמים ימומשו הן באופן איטרטיבי והן באופן רקורסיבי.

רי ואלגוריתם שפועל עליו, התלמיד ינתח את יעילות האלגוריתם.בהינתן עץ בינא .1

התלמיד יסביר מהו עץ חיפוש בינרי. .7

התלמיד יממש אלגוריתמי חיפוש והוספה בעץ חיפוש בינארי, וינתח את יעילותם. .8

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

22

4ממשקי המחלקות שמופיעות ביחידת לימוד

)מחסנית( Stackממשק המחלקה

StackIntמחלקת .intת מחסנית של ערכי המחלקה מייצג

LIFOמחסנית מאופיינת ע"י נקודת הכנסה והוצאה יחידה שמשרה סדר הכנסה/הוצאה

בנאי:

בונה מחסנית ריקה Stack()

שאילתות:

המחסנית ריקה האם? boolean isEmpty()

תיאור של המחסנית כ מחזיר- [x1, x2, …, xn]. אשון.הערך שנוסף לאחרונה למחסנית מופיע ר

String toString()

פקודות:

דחיפה: מוסיף את הערךx .לראש המחסנית void push(int x)

,שליפה: מחזיר את הערך שנמצא בראש המחסנית ומסיר אותו מהמחסנית.

תנאי קדם: המחסנית אינה ריקה.

int pop()

,הצצה: מחזיר את הערך שנמצא בראש המחסנית ית.בלי לשנות את מצב המחסנ

תנאי קדם: המחסנית אינה ריקה.

int top()

<Stack<Tמחלקת Tהמחלקה מייצגת מחסנית של ערכים מטיפוס גנרי

LIFOמחסנית מאופיינת ע"י נקודת הכנסה והוצאה יחידה שמשרה סדר הכנסה/הוצאה

בנאי:

בונה מחסנית ריקה Stack()

שאילתות:

המחסנית ריקה האם? boolean isEmpty()

תיאור של המחסנית כ מחזיר- [x1, x2, …, xn]. הערך שנוסף לאחרונה למחסנית מופיע ראשון.

String toString()

פקודות:

דחיפה: מוסיף אתx .לראש המחסנית void push(T x)

,שליפה: מחזיר את הערך שנמצא בראש המחסנית ומסיר אותו מהמחסנית.

תנאי קדם: המחסנית אינה ריקה.

T pop()

,הצצה: מחזיר את הערך שנמצא בראש המחסנית בלי לשנות את מצב המחסנית.

תנאי קדם: המחסנית אינה ריקה.

T top()

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

23

)תור( Queueממשק המחלקה )

<Queue<Tמחלקת Tהמחלקה מייצגת תור של ערכים מטיפוס גנרי

.FIFOתור מאופיין ע"י נקודת כניסה ונקודת יציאה וסדר הכנסה/הוצאה

בנאי:

בונה תור ריק Queue()

שאילתות:

התור ריק האם? boolean isEmpty()

,מחזיר את הערך שנמצא בראש התור בלי לשנות את מצב התור.

תנאי קדם: התור אינו ריק.

T head()

תיאור של התור כ מחזיר- [x1, x2, …, xn]. הערך שנוסף לאחרונה לתור מופיע אחרון.

String toString()

פקודות:

מכניס אתx לסוף התור void enqueue (T x)

מחזיר את הערךx מראש התור ומוציא אותו מהתור

T dequeue (T x)

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

24

)חולייה( Nodeממשק המחלקה

NodeIntמחלקת

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

בנאים:

:בונה חוליה ,x -לערך החוליה משים )מלשון השמה( את

nullואת ההפניה שלה לערך

NodeInt (int x)

:בונה חוליה את ההפניה שלה , וx -לערך החוליה משים את

nullיכול להיות nextערכו של . nextלחוליה

NodeInt (int x, NodeInt next)

שאילתות:

את ערך החוליהמחזיר int getValue()

הבאה, או את החוליה מחזירnull NodeInt getNext()

?האם יש חוליה נוספת boolean hasNext()

את ערך החוליה כמחרוזת מחזיר String toString()

פקודות:

חוליה להשנה את ערך מ- x void setValue (int x)

לבאה חוליה הההפניה לשנה את מ- next nullיכול להיות nextערכו של

void setNext (NodeInt next)

<Node<Tהמחלקה הגנרית .nullוהפנייה לחוליה או לערך Tמייצגת חוליה המכילה ערך מטיפוס גנרי

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

בנאים:

:בונה חוליה ,x -לערך החוליה משים )מלשון השמה( את

nullואת ההפניה שלה לערך

Node (T x)

:בונה חוליה את ההפניה שלה , וx -לערך החוליה משים את

nullיכול להיות nextערכו של . nextלחוליה

Node (T x, Node<T> next)

שאילתות:

החוליה את ערךמחזיר T getValue()

()null Node<T> getNextהבאה, או את החוליה מחזיר

?האם יש חוליה נוספת boolean hasNext()

את ערך החוליה כמחרוזת מחזיר String toString()

פקודות:

חוליה להשנה את ערך מ- x void setValue (T x)

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

25

לבאה חוליה הההפניה לשנה את מ- next nullיכול להיות nextערכו של

void setNext (Node<T> next)

)אנו מציגים את שני הממשקים זה לצד זה כדי להדגים את ההכללה של מממשק רגיל לממשק גנרי.(

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

21

)חולייה בינארית( BinNodeממשק המחלקה

<BinNode<Tמחלקת לשתי חוליות בינאריות. והפניות Tשמכילה ערך מטיפוס <BinNode<Tמייצגת חוליה בינארית מטיפוס

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

בנאים:

:בונה חוליה בינארית , x -לערך החוליה משים )מלשון השמה( את

null -את שתי ההפניות שלה לו

BinNode (T x)

:בונה חוליה בינארית את שתי ההפניות שלה, וx -לערך החוליה משים את

right -ו leftלחוליות הבינאריות nullכל אחת משתי ההפניות הללו יכול להיות שלן ערכ

BinNode (BinNode<T> left, T x, BinNode<T> right)

שאילתות:

החוליהאת ערך מחזיר T getValue()

החוליה השמאלית, או את מחזירnull BinNode<T> getLeft()

החוליה השמאלית, או את מחזירnull BinNode<T> getRight()

את ערך החוליה כמחרוזת מחזיר String toString()

פקודות:

חוליה להשנה את ערך מ- x void setValue (T x)

לשמאלית חוליה ההפניה לאת הים שמ- left nullיכול להיות leftערכו של

void setLeft (BinNode<T> left)

לימנית חוליה ההפניה לאת הים שמ- right nullיכול להיות rightערכו של

void setRight (BinNode<T> right)

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

27

בהתאמה, שכלולים בתכנית הלימודים #Cאו Javaנספח : רשימת הנושאים בשפת

ית הלימודים .בהתאמה שכלולים בתכנ #Cאו שפת Javaנספח זה מפרט את כל תכני שפת

בכל האמור להלן, המונח "תכנית" מתייחס לתכנית הלימודים במדעי המחשב.

. short, long, byte, float. לא כלולים: int, double, boolean, char :טיפוסי נתונים בסיסיים כלולים בתכנית .6

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

% ,/ ,* ,- ,+אופרטורים אריתמטיים כלולים: .6

כלולים, אך רק במובן האופרטיבי שלהם, ללא התייחסות לערך שהם מחזירים. לכן לא -- -ו ++אופרטורי הקיצור .3

. הסבר: מניעת בלבול מיותר )מב"מ(. ++i, והשימוש יהיה תמיד דרך i++ -ל ++iיתקיים דיון בהבדל בין

אינם כלולים משיקולי מב"מ. =% ,=/ ,=* ,=- ,=+= כלול. האופרטורים אופרטור ההשמה .4

כלולים. כל האופרטורים ! ,|| ,&&כלולים. האופרטורים הלוגיים =< ,< ,=> ,> ,=! ,==האופרטורים היחסיים .5

בשפה אינם כלולים משיקולי מב"מ. האחרים

ו שווה את מחיר הבלבול. אינו כלול, כי הערך הקוסמטי שלו אינ : ?האופרטור הטרנרי .1

כלולות. אלה ההמרות היחידות שחובה ללמד; המרות אחרות עוסקות בטיפוסי נתונים (double) -ו (int)ההמרות .7

שאינם נכללים בתכנית.

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

charAt, contains, indexOf, length

-שרשור מחרוזות ומספרים באמצעות האופרטור + כלול בתכנית; התלמידים אמורים להבין את ההמרות ל .9

String .שנעשות ברקע

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

ולת קלט, הצורך ימומש ויתועד כדלקמן:הבגרות, בכל מקום שיהיה צורך בביצוע פע

// . . . = int int xקריאה לפעולת קלט שקוראת ומחזירה ערך מסוג

טכניקות אחרות #C -ב Console.Write/lnאו System.out.print/lnטכניקת הפלט היחידה שכלולה בתכנית היא .66

אינן כלולות. string.formatאו System.out.printf -ו NumberFormatכגון

כלולה בתכנית אך מוגבלת לפונקציות הבאות בלבד: Mathמחלקת .66

abs, max, min, pow, random, round, sqrt

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

28

כלולים בתכנית. מבני הבקרה הבאים אינם כלולים if, if/else, while, for, foreach, returnמבני הבקרה .63

. ניתן בהחלט ללמד את מבני הבקרה הללו, אך כאמור הם לא do/while, switch, break, continueבתכנית:

יופיעו בבחינות הבגרות הרלבנטיות.

ממדיים )מלבניים בלבד( כלולים בתכנית, וכן גם מערכים של עצמים. איתחול מקוצר של -ודו -מערכים חד .64

למערכים מלבניים, אין צורך לדון ( כלול. מכיוון שהתכנית מוגבלת ;int[] array = {2, 3, 5, 7}מערכים )לדוגמא

על ידי הגדרה פשוטה. ככלל, יש להתייחס #C -כמערך של מערכים או ב Javaמימדי ממומש ב -בכך שמערך רב

כאל תופעה סינטקטית בלי להתעמק בייצוג הפנימי / אובייקטלי #C -ב x[2,3]או בהתאמה x[2] [3]לביטוי כמו

כלולים בתכנית ויש לעודד את השימוש בהם בעבודה foreachבנה הבקרה ומ array.lengthשל המערך. התכונה

עם מערכים.

והבנה של מושג חתימת פעולה (constructor overloading)העמסת מושכלת של בנאים .65

(method signature) .כלולים בתכנית

ושימוש מושכל בבנאים כלולים בתכנית. newפקודת .61

( כלול בתכנית רק ברמה של הבנת APIול בתכנית. עיצוב מחלקות )דהיינו, תכנון ה נתון כל APIמימוש מחלקות לפי .67

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

ת הן . כל התכונוpublicהרשאות גישה: כל המחלקות הכלולות בתכנית והמחלקות שהתלמידים יידרשו לכתוב הן .68

private פרט למקרים מיוחדים )כמו מחלקות "ערך"( בהן ניתן לדון באפשרות להשתמש בתכונות ,public .

אינן package-private -ו protected. הרשאות הגישה privateאו publicפעולות, בנאים, וקבועים הם תמיד

כלולות בתכנית.

., כלולות בתכנית/* … **/, /* … */, //הערות מסוג .69

בכל הקשר אחר )מחלקות, פעולות, פרמטרים, תכונות( finalכלול רק בהקשר של קבועים. המאפיין finalהמאפיין .60

אינו כלול בתכנית.

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

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

אינן כלולות בתכנית. clone -, וequals ,hashcodeהפעולות .66

כלולים בתכנית. packageוהבנה כללית של מושג ה importהשימוש בפקודת .63

מחלקות מקוננות ומחלקות פנימיות אינן כלולות בתכנית. .64

65. enums .כלולים בתכנית

61. threads .אינם כלולים בתכנית

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

29

,NullPointerException)החריגות הטיפוסיות שקורות בזמן הרצת תכניות .67

ArrayIndexOutOfBoundsException, ArithmeticException, IllegalArgumentException) .כלולות בתכנית

אינם כלולים בתכנית. throws -ו try / catch / finallyהמבנים

סטרקטיות, ופולימורפיזם אינם כלולה בתכנית. יש להכיר את , מחלקות אב(interface)ירושה, ממשקים .68

של מחלקות שונות. יחד עם APIכדי להבין את משמעותם בקריאת תיעוד (interface)המושגים ירושה וממשקים

זאת, כאמור, השימוש בהם אינו כלול בתכנית.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

30

פרקי בחירה –היחידה החמישית

מודלים חישוביים

יעד אוכלוסיית ה

ים אשר למדו מדעי המחשב ברמה רגילהנבחנ

מטרות היחידה

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

את כוחם ואת תכונותיהם של מודלים אלה

פרקי הלימוד

תיאור מערכות ופתרון חידות :6פרק

יאוטומט סופי דטרמיניסט :6פרק

מילים ושפות פורמליות :3פרק

מודלים נוספים של אוטומט סופי :4פרק

אוטומט המחסנית :5פרק

כוחו ומגבלותיו של מודל אוטומט המחסנית :1פרק

מכונת טיורינג :7פרק

ביבליוגרפיה

ב'. -, כרכים א' ואוטומטים ושפות פורמליות(, 6996האוניברסיטה הפתוחה ) •

, האוניברסיטה הפתוחה. יסודות מדעי המחשבאלגוריתמיקה, (, 6996הראל ד' ) •

• Barwise, Etchemendy (1993), Turing’s World, An Introduction to Computability Theory,

CLSI Publications.

• Davis, Sigal, Weyuker (1994), Computability, Complexity and Languages, Fundamentals

of Theoretical Computer Science, Academic Press.

• Hopcroft, Ullman (1979), Introduction to Automata Theory, Languages and Computations,

Addison-Wesel.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

31

יחידה זו מחולקת לשלושה חלקים:

האוטומט הסופי חלק א':

אוטומט המחסנית חלק ב':

מכונת טיורינג חלק ג':

(4–1טומט הסופי )פרקים חלק א': האו

ים הכלים, דרכי החשיבה והמונחים נבחנלחלק הזה מוקדש רוב יחידת הלימוד הזאת. בחלק זה מוקנים ל

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

מלא -הסופי הדטרמיניסטי הלאשמוצגים בחלק זה הם האוטומט הסופי הדטרמיניסטי, האוטומט

דטרמיניסטי.-והאוטומט הסופי הלא

(1–5חלק ב': אוטומט המחסנית )פרקים

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

(7חלק ג': מכונת טיורינג )פרק

בו דיון על התזה של צ'רץ' וטיורינג ועל מגבלותיו ונערך –מכונת טיורינג –חלק זה מציג מודל לתכנית מחשב

של המחשב.

: תיאור מערכות ופתרון חידות 1פרק

מטרות הפרק

להכיר את המושגים הבסיסיים בתחום

פירוט התכנים

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

ת ומושגים )מצב מקבל, מצב מלכודת(גרפי: דוגמאו

: אוטומט סופי דטרמיניסטי 2פרק

מטרות הפרק

להציג את מודל האוטומט הסופי הדטרמיניסטי •

לתרגל בניית אוטומטים •

פירוט התכנים

ידי פירוט -אוטומט סופי דטרמיניסטי; מסלול חישוב מקבל ולא מקבל; תיאור אוטומט בדרך גרפית או על

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

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

32

: מילים ושפות פורמליות3פרק

מטרות הפרק

להכיר מושגים בסיסיים בתורת השפות הפורמליות .6

לחקור את כוחו של מודל האוטומט הסופי הדטרמיניסטי ואת התכונות של משפחת השפות הרגולריות .6

פירוט התכנים

מושגים בסיסיים: אות, א"ב, מילה, אורך מילה, המילה הריקה, שפה פורמלית; פעולות על מילים ועל

ת סגירות של משפחת השפות שפות: שרשור, חזקה, היפוך; שפה רגולרית, שפות שאינן רגולריות, תכונו

הרגולריות: דיון בסגירות לחלקיות, משלים, חיתוך ואיחוד

: מודלים נוספים של אוטומט סופי 4פרק

מטרות הפרק

לקבל מודלים חדשים –ידי שינוי הגדרה קיימת של מודל חישובי -על –להבין כיצד אפשר •

של מודלים חישוביים דטרמיניזם ולדון בהשוואת כוחם-להכיר את מושג האי •

פירוט התכנים

דטרמיניסטי; שקילות של מודל האוטומט הסופי -מלא; אוטומט סופי לא-אוטומט סופי דטרמיניסטי לא

דטרמיניסטי; תכונות סגירות של משפחת השפות -הדטרמיניסטי ושל מודל האוטומט הסופי הלא

הרגולריות: דיון בסגירות לשרשור, היפוך ואיחוד

וטומט המחסנית : א5פרק

מטרות הפרק

דטרמיניסטי-להכיר את מודל אוטומט המחסנית הלא •

לתרגל את בניית אוטומט המחסנית •

פירוט התכנים

דטרמיניסטי-שימוש במחסנית כמבנה עזר, אוטומט מחסנית לא

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

33

: כוחו ומגבלותיו של מודל אוטומט המחסנית 1פרק

מטרות הפרק

ו של מודל אוטומט המחסניתהכרת כוחו ומגבלותי .6

להשוות בין המודל החדש למודל האוטומט הסופי .6

פירוט התכנים

דטרמיניסטי לבין -אוטומט מחסנית דטרמיניסטי; השוואה בין כוח החישוב של אוטומט מחסנית לא

אוטומט מחסנית דטרמיניסטי, משפחת השפות חופשיות ההקשר; שפות שאינן חופשיות הקשר; תכונות

ירות של משפחת השפות חופשיות ההקשר: דיון בסגירות חלקיות, משלים, חיתוך, איחוד, שרשור, היפוךסג

: מכונת טיורינג 7פרק

מטרות הפרק

להציג מכונת טיורינג כמודל לתכנית מחשב •

להכיר את התזה של צ'רץ' וטיורינג •

פירוט התכנים

עצירה של מכונות טיורינג, מכונות טיורינג שמחשבות -ימכונת טיורינג: הגדרה, דוגמאות ותרגילים, א

פונקציות, השקילות של תכנית מחשב ומכונת טיורינג, התזה של צ'רץ' וטיורינג, בעיית העצירה

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

34

תכנות מונחה עצמים

C ,# ג'אווה סביבת

בארי ולגב' המרכז להוראת המדעים. אנו מודים לפרופ' כתריאל –ידי צוות מדעי המחשב -היחידה פותחה על

עופרה ברנדס שעמדו בראש הצוות שפיתח את היחידה.

מטרות היחידה

'תכנות מונחה עצמים' –ים לגישה המודרנית בתחום עיצוב תוכנה ותכנות נבחנלחשוף את ה •

פי הגישה החדשה: הכרת העקרונות והמנגנונים העיקריים -ים ידע מקיף בתכנות עלנבחנלהקנות ל •

עמסה, הגדרה מחדש, המרותהכוללים מחלקות, ה

לפתח את יכולת החשיבה המופשטת בעזרת הרעיונות המתקדמים של הגישה: ירושה, פולימורפיזם •

וממשקים

ג'אווהאולם כיוון שרוב ההבדלים בין .שום המשמשת את היחידה היא ג'אווהשפת היי הערה:

NET -בכל שפות ה Web Servicesהם תחביריים, ומכיוון שבמגמת הנדסת תוכנה אפשר ללמוד #C -ל

.C#נאמר גם עבור ג'אווהכל האמור לגבי

דרישות קדם

וליחידה 'עיצוב תוכנה'. היא מסתמכת על התכנים 6-ו 6היחידה מהווה קורס המשך לתכנית יסודות

הנלמדים ביחידות אלה וממשיכה לעסוק בהם.

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

הכרת מבני בקרה ושליטה, לולאות ופתרון בעיות מורכבות כמיון וחיפוש, הכרת הנושא העוסק בטיפוסי

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

אוכלוסיית היעד

יח"ל( 5שב בהיקף מוגבר )לפחות ים הלומדים מדעי המחנבחנ

ג'אווהסביבת העבודה ב

. הסביבה היא חלונאית ומיישמת רבים מן JCreatorסביבת העבודה שנבחרה לצורך לימוד היחידה היא

ים מעבודתם במחשב. הסביבה משמשת כעורך ומכילה מהדר )קומפיילר( ואת כל נבחנהתפקודים המוכרים ל

וכן –ג'אווה. בסביבת העבודה ניתן גם להריץ את התכניות. סביבת העבודה הקיימת ב API-ספריית קובצי ה

ידי -מותקנים אוטומטית על –כל הקבצים והתוכנות אשר נלווים אליה ונדרשים לצורך עבודה תקינה

. נבחןתקליטור הנמסר לכל

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

35

C#-סביבת העבודה ב

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

.NETאו לסביבת C#-, יש להמיר לפקודה המתאימה )אם יש צורך( בJCreatorהעבודה

ביבליוגרפיה

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

תנסות בתחום זה. אנו להלן רק אחדים כן, רבים האתרים המציגים את התחום ומציעים תרגול וה-כמו

משלל האתרים והמקורות המוקדשים לנושא זה.

הספר לטכנולוגיה של האוניברסיטה -בית ,Cלמתכנתי שפת ג'אווהתכנות מונחה עצמים בשפת •

(C-אינו מצריך ידע מוקדם בשהפתוחה, מטח ומה"ט. )ספר קריא מאוד

• Bradly, L. Johes. (6003 ,)C#, עמודים( 765לימוד, הוצאת הוד עמי )עברית, סדנת

עמודים( 606הוצאת אופוס )עברית, ,#Cיסודות שפת (, 6003אלבהארי בן, דרייטון פיטר, בראד מריל ) •

אשר מפתחת את ג'אווה. זהו אתר מומלץ מאוד המציע תרגול וסקירת SUNאתר האינטרנט של חברת •

/http://java.sun.com/docs/books/tutorial/java יא:נושאים, ומתעדכן באופן שוטף. כתובתו ה

זהו אתר מומלץ מאוד המציע תרגול וסקירת .#Cאשר מפתחת את Microsoftאתר האינטרנט של חברת •

/http://www.msdn.microsoft.com/vcsharp נושאים, ומתעדכן באופן שוטף. כתובתו היא:

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

והמכללות הפועלות בישראל

• Reges, Stuart (2003), Can C# Replace Java in CS1 and CS2?, University of Arizona, Computer

Science Department site, http://www.cs.arizona.edu/~reges/sigcse/csharp.pdf

(C# -ל ג'אווה)מאמר העוסק בהבדלים שבין

פרקי הלימוד

כל העולם כולו עצמים :6פרק

עוברים לג'אווה :6פרק

על המחלקה, העצמים ומה שביניהם :3פרק

()main-פענוח צפונות ה :4פרק

ירושה ופולימורפיזם :5פרק

ממשקים :1פרק

שפות תכנות: משפות מכונה עד ג'אווה :7פרק

מחלקות מופשטות פרק הרחבה:

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

31

: כל העולם כולו עצמים1פרק

מטרות הפרק

לשמש פרק מבוא •

ציג את מושגי היסוד ואת העקרונות של גישת 'התכנות מונחה העצמים'לה •

ים, ולידע קודם נבחניום של ה-לשים דגש על מגוון רחב של דוגמאות המקשרות את הגישה לחיי היום •

מלימוד מדעי המחשב

פירוט התכנים

, צורת החשיבהObject Oriented Programming –'תכנות מונחה עצמים' •

, ולמה הוא משמשobject –ם מהו עצ •

כמתארות יכולת פעולה – (methods)כמתארות מצב, ושיטות – (attributes)תכונות –איברי עצם •

תהליך הפיתוח של תכנית מונחית עצמים )הדגמה וסקירה( •

תקשורת בין עצמים: פנייה לתכונות ולשיטות •

; (instances)מחלקה כמשמשת ליצירת מופעים : כתבנית מופשטת המגדירה טיפוס; הclass –מחלקה •

(constructor)השיטה הבונה

בקצרה –דרך ליצירת יחסי סיווג; עיקרון בתכנות מונחה עצמים; פולימורפיזם –ירושה •

ועומדים בבסיס הגישה: הסתרת מידע, הכמסה, עבודה עם ממשקים, נבחןרעיונות כלליים המוכרים ל •

שימוש חוזר בקוד

: עוברים לג'אווה2ק פר

מטרות הפרק

ים את היכולת לתכנת בשפת ג'אווה ברמה מקבילה כמעט ליכולת התכנות שהייתה להם נבחנלהקנות ל •

בשפה הפרוצדורלית

ללמד את כללי הכתיבה )המוסכמות( בשפת ג'אווה •

ים שליטה בזרימת התכנית של שפת ג'אווה נבחנללמד מהם מבני בקרה ולהקנות ל •

, ולהתנסות בה JCreator–להכיר את סביבת העבודה •

פירוט התכנים

, מילים שמורות (Indent)פסיק, סימון בלוק פקודות, הערות, הזחה -דקדוק, תחביר ומוסכמות: נקודה •

ראשונות; מוסכמות כתיבה ראשונות בג'אווה )שם מחלקה, שמות משמעותיים(

; פקודות הדפסה פשוטות: (dot notation)הנקודה -שיטות: סימון •

System.out.print(),System.out.println()

int, double, char, booleanטיפוסי נתונים בסיסיים: •

הצהרת משתנים והצבת ערכים במשתנים •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

37

(casting)המרה בין טיפוסים בסיסיים •

ומוסכמות כתיבה final –קבועים •

. switch, פקודת do-while, לולאת while, לולאת for, לולאת (if-else)שליטה בזרימת התכנית: תנאי •

סימן השוויון == לעומת סימן ההצבה =

: התקנה, יצירת פרויקט: פתיחה וסגירה, כתיבת תכנית, הידור והרצה, JCreatorסביבת העבודה •

העתקות וצירופים של קבצים וספריות; תרגול

יניהם: על המחלקה, העצמים ומה שב3פרק

מטרות הפרק

לחזור על המושגים היסודיים שנלמדו בפרק המבוא, תוך כדי מימושם בשפת ג'אווה •

לעשות שימוש ראשוני במושגי המחלקה, העצם והתקשורת בין עצמים •

לכתוב תכניות ראשונות ומחלקות ראשונות •

פירוט התכנים

ות, הרשאות גישה )באופן כללי( המחלקה: הגדרה ויצירה. כותרת, מוסכמות בכתיבת שמ •

תכונות: אפיון, הגדרה ואתחול •

שיטות: חתימה, העברת פרמטרים, ערכי החזרה •

new, קונסטרקטור בררת המחדל, שימוש בפקודה (constructor)השיטה הבונה –יצירת עצמים ממחלקה •

ברת עצמים כפרמטרים , הע(references)ידי הפניות -משתנים המכילים עצמים על –הפניות •

הנקודה -שימוש בעצמים קיימים, תקשורת בין עצמים, שימוש בסימון •

עצמים מורכבים •

(copy constructor)מעתיקה -בונה-, שיטה(overloading)העמסת שיטות •

API ג'אווהבעבודה עם ממשקים. הכרה ותרגול של שימוש •

()main-: פענוח צפונות ה4פרק

פרקמטרות ה

לסקור נושאים תחביריים מתקדמים )מערכים, מחרוזות ואיברי מחלקה( •

להעמיק בנושא הרשאות גישה •

(Javadoc)הכיר את מנגנון התיעוד של ג'אווהל •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

38

פירוט התכנים

ייחודו של העצם מערך, –ממדיים, המערך כעצם בעל תכונות ושיטות, יצירה ואתחול -מערכים חד •

ריבועיים )בקצרה( -ממדיים ומערכים לא-מערך, מערך של עצמים; מערכים דוחריגה מגבולות

()toStringמחרוזת כעצם; שיטות וממשק המחלקה, אופרטור השרשור; השיטה – Stringהמחלקה •

כדרך להדפסת אובייקטים

import –יבוא מחלקות: השימוש בפקודה •

; הגדרה ופנייה אל איברי מחלקה; מחלקות שירות (static)איברי מחלקה; תכונות ושיטות סטטיות •

; מימוש הרעיונות הסתרת המידע private –ופרטי public –: פומבי (access specifiers)הרשאות גישה •

והכימוס; הפרדה בין ממשק למימוש

, כמאפשר את רעיון העבודה עם ממשקים והסתרת המידע; שימושJavadoc-מנגנון ה •

שה ופולימורפיזם: ירו5פרק

מטרות הפרק

polymorphism –, ופולימורפיזם inheritance –להכיר שני עקרונות יסוד בתכנות מונחה עצמים: ירושה

פירוט התכנים

אנושית: תהליך של מיון וסיווג היררכי; ייצוג היחס 'סוג של'-מייצגת חלוקה היררכית טבעית –ירושה •

(is a)

(super class)על -כותרת המחלקה, מחלקתב extendsהתוספת – (single inheritance) ג'אווהירושה ב •

protected –, הרשאת הגישה 'מוגן' (sub class)מחלקה -ותת

גבי שיטה רגילה ולגבי קונסטרקטור ל super-מה עובר? שיטות בונות, השימוש ב –ירושה •

overriding –הגדרה מחדש של שיטות •

Object –ן המחלקה הראשונה ירושה מ •

ירושה כתומכת ברעיון הסתרת המידע, שימוש חוזר בקוד, עבודה עם ממשקים •

מעט על תכנון מונחה עצמים תוך שימוש ברעיון הירושה •

צורניות: היתרון, העוצמה של הרעיון והשימוש בו -רב –פולימורפיזם •

(downcasting), המרה למטה (upcasting)זימון פולימורפי של שיטות, המרה למעלה •

הקיים בג'אווה, תוך כדי הדגשה של צמצום השימוש בו לטובת רעיון instanceofהאופרטור •

הפולימורפיזם

הדרך להפוך טיפוסים בסיסיים לאובייקטים –מחלקות עוטפות •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

39

: ממשקים1פרק

מטרות הפרק

ג'אווה ב (interfaces)להכיר את מנגנון הממשקים •

להבין כיצד המנגנון מאפשר שימוש מתקדם בעקרון הפולימורפיזם •

פירוט התכנים

'. )לעומת 'סוג של' בירושה( -ממשק כמגדיר התנהגות ומייצג את היחס 'מתפקד כ •

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

חייבת לממש את כל המפורט –מעוניינת לממש את הממשק הממשק כמגדיר חוזה; כל מחלקה ה •

בחוזה; החובות והזכויות של המחלקות המממשות

לכותרת מחלקה המממשת את הממשק implements-הממשק בג'אווה: תוספת ה •

ירושה בין ממשקים; מימוש מרובה של ממשקים •

ממשקים בשירות הפולימורפיזם •

עד ג'אווהת מכונה ות: משפו: שפות תכנ7פרק

מטרות הפרק

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

להבין את הסדר הכרונולוגי של פיתוח שפות תכנות •

להבין את הרציונל ואת המטרות שעמדו בפני מפתחי שפות התכנות •

זהו פרק העשרה בלבד הערה:

פירוט התכנים

ה היסטורית של פיתוח שפות תכנות: שפות מכונה, סף, שפות עיליות שונות סקיר •

גישה תכנותית חדשה: תכנות מונחה עצמים; מערכת היא אוסף של מודולים המתקשרים ביניהם •

תלות בפלטפורמה שעליה רצה התכנית, ניידות -ג'אווה כשפה: ההתפתחות; המאפיינים: חסינות, אי •

API ג'אווה –טנדרטית ספריית המחלקות הס •

(Applets)ויישומונים(Applications) יישומים •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

40

מופשטות : מחלקותפרק הרחבה

מטרות הפרק

בג'אווה (abstract classes)להכיר את המנגנון של מחלקות מופשטות •

להבין כיצד המנגנון מאפשר שימוש מתקדם והרחבה של עקרון הפולימורפיזם •

פירוט התכנים

הצורך בהגדרת מחלקות מופשטות: המחלקה המופשטת כמגדירה רעיון שאינו ניתן למימוש וליצירה •

של עצמים בשלב נתון

המחלקה המופשטת בג'אווה: כותרת המחלקה; מימושים חלקיים; הגדרת שיטות מופשטות; שיטות •

בונות

חייבת לממש את כל –מחלקה המחלקה המופשטת כמגדירה חוזה; כל מחלקה המעוניינת לממש את ה •

המפורט בחוזה; החובות והזכויות של המחלקות המממשות; הגדרה מחדש במחלקות היורשות

מחלקות מופשטות בשירות הפולימורפיזם •

א לחקר ביצועיםמבו

אוכלוסיית היעד

יח"ל במדעי המחשב 3יח"ל במתמטיקה, ושסיימו 3ים הלומדים לפחות נבחנ

דרישות קדם

בדרך אלגברית ובדרך גרפית –לשלוט בניתוח ובפתרון של מערכת משוואות לינאריות •

ביחידה 'עיצוב תוכנה'( 5לנתח סיבוכיות זמן ריצה של אלגוריתם )פרק •

מטרות היחידה

להכיר את גישת חקר הביצועים לפתרון בעיות אופטימיזציה בתחומים יישומיים שונים •

תכנון לינארי –העקרונות והשיטות של הענף המרכזי של חקר ביצועים ,יסייםלהבין את המושגים הבס •

)ללא חובת שימוש באלגברה לינארית שאינו מקצוע קדם(

המהוות נושא –להבין את המושגים הבסיסיים, את העקרונות ואת השיטות של בעיות זרימה ברשתות •

ות, אופטימיזציה קומבינטורית, חקר מרכזי בתחומים הבאים: אלגוריתמיקה, תורת הגרפים והרשת

ביצועים

להיעזר בעקרונות של התכנון הלינארי להבנה מעמיקה יותר של התכונות של בעיות זרימה ברשתות, •

והשיטות לפתרונן; להיעזר בעקרונות של עיצוב תוכנה למימוש, לניתוח ולשיפור של שיטות אלה

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

כולל ניתוח היעילות של הפתרון

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

41

פרקי הלימוד

מודל התכנון הלינארי :6פרק

פתרון של בעיות תכנון לינארי :6פרק

בעיית התובלה :3פרק

מודלים של זרימה ברשתות :4פרק

בעיית המסלול הקצר ביותר :5פרק

עץ פורש מינימלי :1פרק

יבליוגרפיה ב

.6997, כרך ב', האוניברסיטה הפתוחה מבוא לאלגוריתמים •

.6995ב', האוניברסיטה הפתוחה -, כרכים א' ומודלים דטרמיניסטיים בחקר ביצועים •

• J. Gal-Ezer, G. Zwas, “An Algorithmic Approach to Linear Systems”, Int. J. Math. Educ. Sci.

Technol. 1984 (pp. 501–519).

• H. A. Taha, Operations Research: An Introduction, 6th edition, Prentice Hall 1996.

• R.K. Ahuja, T.L. Magnanti and J.B. Orlin, Network Flows: Theory, Algorithms and

Applications, Prentice-Hall 1993.

אים באתר האינטרנט הזה:פתרונות לתרגילים המופיעים בספר האחרון נמצ •

http://web.mit.edu/jorlin/www/SolutionManual/SolutionManual.html

אתרים ברשת •

אנימציה של אלגוריתמים: •

http://www-b2.is.tokushima-u.ac.jp/~ikeda/suuri/simplex/Simplex.html

http://www.cs.oswego.edu/~birgit/html/diplom/links.html

http://carnap.ss.uci.edu/java/dijkstra/DijkstraApplet.html

מילון מונחים בתורת הגרפים: •

http://www.utm.edu/departments/math/graph/glossary.html#degree

:(class notes)אתרי קורסים המכילים חומר לימודי •

http://ubmail.ubalt.edu/~harsham/opre640/opre640.htm

http://www-math.mit.edu/~vempala/18.433/course99.html

http://wwwpub.utdallas.edu/~chandra/documents/7313.htm

http://www.mat.uc.pt/~eqvm/links/cursos.html

אתרים כלליים ופורטלים לחקר ביצועים: •

http://www.opsresearch.com

http://www.opsresearch.com/OR-Links/index.html

http://mat.gsia.cmu.edu

http://www.math.rpi.edu/~mitchj/sites_or.html

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

42

: מודל התכנון הלינארי1פרק

מטרות הפרק

להכיר את ההנחות ואת המושגים הבסיסיים של מודל התכנון הלינארי •

לתרגל ניסוח בעיות בעזרת מודל התכנון הלינארי •

פירוט התכנים

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

נתונה(, מינימום עלות ברמת שירות נדרשת, ועוד

ניסוח מתמטי של בעיית תכנון לינארי •

המרכיבים העיקריים של בעיית תכנון לינארי: משתני החלטה )רציפים(, פרמטרים, אילוצים, אילוצי •

טרהשליליות, פונקציית מ-אי

ההנחות שעליהן מבוסס מודל התכנון הלינארי •

דוגמאות לניסוח בעיות תכנון לינארי •

: פתרון של בעיות תכנון לינארי2פרק

מטרות הפרק

להציג ולתרגל את הפתרון הגרפי של בעיית תכנון לינארי בעלת שני משתנים •

שני משתניםלחקור את התכונות העיקריות של בעיות תכנון לינארי בעלות •

משתנים Nלהציג את ההשלכות של הפתרון הגרפי על התכונות של בעיות תכנון לינארי בעלות •

להכיר את העקרונות הבסיסיים של שיטת הסימפלקס •

להדגים את השלבים השונים בשיטת הסימפלקס •

פירוט התכנים

י של התחום האפשרי במקרים פתרון גרפי של בעיית תכנון לינארי בעלת שני משתנים; תיאור גרפ •

חסום, תחום ריק; התכונות של התחום האפשרי: קמירות, נקודות -הבאים: תחום חסום, תחום לא

קיצון; תיאור גרפי של פונקציית המטרה; היטלי גובה, התכונות של הפתרון האופטימלי, והמצבים

חסום-האפשריים: פתרון יחיד, פתרונות מרובים, פתרון לא

לקס: האלגברה של שיטת הסימפלקס והשלבים בשיטת הסימפלקס, התכונות פשיטת הסימ •

ה'גאומטריות' של התחום האפשרי והתכונות של הפתרון האופטימלי, קריטריון האופטימליות:

-פתרונות בסיסיים אפשריים סמוכים; המצבים האפשריים: פתרון יחיד, פתרונות מרובים, פתרון לא

חסום

סיכום שלבי הפתרון. •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

43

: בעיית התובלה3פרק

מטרות הפרק

להציג את המודל של בעיית התובלה ולהכיר את המושגים הבסיסיים שלה •

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

בצורה לא פורמלית להציג לתרגל את המימוש של שיטת הסימפלקס באמצעות פתרון בעיות תובלה; •

מושגים של בעיות זרימה ברשתות )מבוא לפרקים הבאים(

פירוט התכנים

ניסוח בעיית התובלה כבעיית תכנון לינארי בשלמים •

התכונות של בעיית התובלה: תכונת הפתרונות השלמים, תכונת הפתרון האפשרי •

לקס: מציאת פתרון בסיסי אפשרי ניצול התכונות של בעיית התובלה למימוש יעיל של שיטת הסימפ •

בשיטת פינה צפון מערבית, בדיקת אופטימליות, שיפור הפתרון

סיכום היתרונות של השימוש בשיטת הסימפלקס המותאמת לבעיית התובלה לעומת השימוש בשיטת •

הסימפלקס לצורך בעיית תכנון לינארי כללית

התובלה רשות: סקירת שיטות לשיפור היעילות של פתרון בעיית •

: מודלים של זרימה ברשתות4פרק

מטרות הפרק

להדגים מודלים של בעיות זרימה ברשתות ולהכיר את המושגים הבסיסיים של בעיות אלו •

להציג את הגרף כטיפוס נתונים מופשט •

להדגים אלגוריתמים של בעיות זרימה ברשתות •

פירוט התכנים

דוגמאות של בעיות זרימה ברשתות •

קדקוד, קשת, מסלול, עץ, מעגל-ףהגדרת המרכיבים העיקריים של בעיות זרימה ברשתות: גר •

ירים, קיבולת, היצע וביקושזרימה, מח –רשת •

סקירת מבני נתונים שונים לייצוג גרפים ורשתות •

מטריצת מסלולים •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

44

: בעיית המסלול הקצר ביותר5פרק

מטרות הפרק

הקצר ביותר ולהכיר את המושגים הבסיסיים של בעיות אלו להציג את בעיות המסלול •

להציג ולנתח יעילות של שיטות שונות לפתרון בעיות המסלול הקצר ביותר •

לתרגל ניסוח ופתרון של בעיות המסלול הקצר ביותר •

פירוט התכנים

הקצר ביותרדוגמאות של בעיות המסלול הקצר ביותר בתחומים שונים; סיווג של בעיות המסלול •

הגדרה פורמלית של הבעיה )כולל ההנחות( וניסוח כבעיית תכנון לינארי בשלמים, תכונת הפתרונות •

השלמים

אלגוריתם דיקסטרה; ניתוח –מציאת המסלולים הקצרים מקדקוד נתון לכל הקדקודים האחרים •

היעילות של האלגוריתם

עץ המסלולים הקצרים –ל הקדקודים האחרים הצגה יעילה של המסלולים הקצרים מקדקוד נתון לכ •

–מציאת המסלולים הקצרים מקדקוד נתון לכל הקדקודים האחרים, כאשר לכל הקשתות משקל זהה •

; ניתוח היעילות של BFS; עץ המסלולים הקצרים, עץ פורש BFS –ידי חיפוש לרוחב -סריקת גרף על

האלגוריתם

אלגוריתם למציאת רכיבים ,, ניתוח היעילות של האלגוריתםDFS; עץ פורש DFS –סריקת גרף לעומק •

מכוון ואלגוריתם למציאת רכיבי קשירות חזקה )רק"חים( בגרפים מכוונים-קשירים בגרף לא

מיון טופולוגי •

וורשל-מציאת המסלולים הקצרים ביותר בין כל זוגות הקדקודים; אלגוריתמים של דיקסטרה, פלויד •

ימלי: עץ פורש מינ1פרק

מטרות הפרק

להכיר את המושגים הבסיסיים של בעיית העץ הפורש •

להציג ולנתח את היעילות של שיטות שונות לפתרון בעיית העץ הפורש •

פירוט התכנים

הצגת הבעיה •

עצים, הגדרות ותכונות יסוד •

האלגוריתם של קרוסקאל •

האלגוריתם של פרים •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

45

מערכות מחשב ואסמבלר

סיית היעדאוכלו

'6' ואת 'יסודות מדעי המחשב 6ים שסיימו לפחות את 'יסודות מדעי המחשב נבחנ

מבוא ורציונל

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

מטרות היחידה

ניברסלית, עקרונות להכיר את העקרונות של המבנה הבסיסי של מחשב, המשמש כמכונת חישוב או •

אשר דרושים ליישום התפיסה של תכנית מאוחסנת

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

לדעת כיצד מאוחסן מידע )נתונים והוראות( במחשב •

8081להכיר את מבנה המחשב המבוסס על מעבד •

שפה עילית, את תנות של כתיבה בשפת סף לעומת כתיבאת היתרו – 8081להכיר את שפת הסף •

היתרונות ואת החסרונות הנובעים מן ההבדלים בין השקיפות של חומרת המחשב בשפות עיליות לעומת

שפת סף

, המדגימים מרכיבים שונים שקיימים בכל שפת תוכנה: 8081להכיר את אוצר הפקודות בשפת הסף •

ולאות, שגרות, קלט ופלטהוראות השמה, בקרה )הסתעפות(, ל

להבין כיצד מאוחסנים ומטופלים במחשב טיפוסי נתונים שונים )שלם, ממשי, תו( ומבני נתונים •

)מערכים(

להבין כיצד מתבצעת תכנית בשפת סף ובשפות עיליות במחשב •

להכיר התפתחויות שחלו במחשבים מודרניים ושנועדו לשכלל את מבנה המחשב הבסיסי •

סוגיות בארכיטקטורה של מיקרומעבדים מודרניים )פנטיום(, אשר נועדו להשיג מהירויות עיבוד להכיר •

גבוהות

סביבת העבודה

editor -ו debbuggerשפת התכנות ביחידה זו היא שפת טורבו אסמבלר. סביבת עבודה זו כוללת את

ומאפשרת להמחיש את העקרונות העיוניים והמעשיים של היחידה.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

41

יוגרפיה ביבל

., האוניברסיטה הפתוחהארגון המחשב ושפת סף •

.סיטה הפתוחה, האוניברארגון המחשב ותכנותופיקז, אריה, •

.לוגיה של האוניברסיטה הפתוחהולטכנהספר -, בית8081/88שפת סף •

ברסיטה הפתוחה, מטח לוגיה של האוניוהספר לטכנ-ב', בית-, חלקים א' ומחשבים ומיקרומעבדים •

.רד החינוךומש

• Uffenbeck, J., 1998, The 80x86 Family, Design, Progrmming, and Interfacing, Prentice-Hall

International, Inc.

פרקי הלימוד

מבוא :6פרק

הצגת המידע במחשב ושיטות ספירה :6פרק

המבנה הבסיסי של המחשב :3פרק

מבוא לשפת סף :4פרק

8081בשפת סף של המיקרומעבד תכנות מתקדם :5פרק

ההתפתחות של מחשבים מודרניים :1פרק

יחידה זו מחולקת לשלושה חלקים:

(3–1חלק א': החומרה )פרקים

חלק זה מתאר את הארכיטקטורה של המחשב, המבוססת על תפיסה של תכנית מאוחסנת המממשת מכונת

מאפיינת הן מחשבים המשמשים למטרות . ארכיטקטורה זו (von Neumannחישוב אוניברסלית )מודל

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

מגוון של תכניות )אפליקציות(, מאפשר לו לקלוט מגוון של נתונים )מספרים, מילים( ממקורות קלט שונים,

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

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

הראשון נתייחס לתרשים המלבנים ולעקרונות של אופן הביצוע של תכנית מאוחסנת במחשב; בשלב השני

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

ידי תיאור של מחזורי -על אופן הביצוע של התכנית; לבסוף, נפרט כיצד התכנית מתבצעת במחשב )על

, ונתאר את 8081מחשב -הכתיבה והקריאה(. בסיום חלק זה, נציג את המבנה של מחשב המבוסס על מיקרו

שב אשר דרושים ללימוד שפת סף.המרכיבים העיקריים במח

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

47

(5–4חלק ב': התוכנה )פרקים

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

למבנה המחשב. היכרות עם שפת סף חשובה מכמה היבטים:

היא מאפשרת הבנה טובה יותר של מבנה המחשב. .6

היכרות עם שפת תכנות המתאימה לביצוע יישומים שבהם הזמן הוא קריטי )יישומי נבחןת להיא מזמנ .6

זמן אמת(.

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

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

, כדוגמה מייצגת של שפות סף.8081יכירו ויתרגלו את שפת הסף של מעבד

(1חלק ג': ההתפתחות והארכיטקטורה של מיקרומעבדים מודרניים )פרק

חלק זה יכלול הרחבות המתייחסות למערכות מחשב מודרניות, ויידונו בו ההתפתחויות בתחום המחשבים

הירויות עיבוד גבוהות יותר, למשל: גודל מילה, אוגרים מיוחדים, וסוגיות בארכיטקטורה שמטרתן להשיג מ

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

מטמון, צינור הוראות.

: מבוא1פרק

מטרות הפרק

. von Neumanמאוחסנת של להכיר את המבנה הבסיסי של המחשב, אשר מממש את התפיסה של תכנית

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

מכירים הן בתור משתמשים באפליקציות רבות והן בתור מתכנתים בשפות עיליות.

פירוט התכנים

חסנת )נתונים והוראות(מחשב כמכונת חישוב אוניברסלית, תפיסה של תכנית מאו –מהו מחשב •

תרשים מלבנים המתאר את היחידות השונות של המחשב ואת –המבנה הסכמתי של המחשב הבסיסי •

התפקידים שלהן, ללא פירוט של מבנה היחידות הללו

סוג המידע שזורם מיחידה ליחידה –העברת מידע במערכת •

fetch and executeמחזור ביצוע ההוראה –איך תכנית מתבצעת באופן עקרוני •

התפתחות )דורות( של מחשבים –היסטוריה •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

48

: הצגת המידע במחשב ושיטות ספירה2פרק

מטרות הפרק

ללמוד על האופן שבו מאוחסן במחשב מידע מסוגים שונים )הוראות תכנית, נתונים, בקרה וכו'( •

ירה העשרונית והסיבות לכך שהמידע מאוחסן במחשב בשיטת ספירה אשר שונה משיטת הספ

ללמוד את העקרונות האלה: •

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

גם אם בשפה עילית אנו מתייחסים לנתונים המוצגים בצורה מגוונת )מספרים, מחרוזות וכו'(

במחשב בינריהסיבות לשימוש בשיטת הייצוג ה •

התכנים פירוט

הוראות )של תכנית(, נתונים, הוראות בקרה, כתובות –סוגי מידע שמאוחסנים וזורמים במחשב •

–ים בינרימלית; סדרי גודל של מספרים ית והקסהדצבינריעשרונית, –שיטות ספירה )ייצוג( •

kB ,MB ,GB

ת וההקסהדצימליתבינריהמרה משיטת הספירה העשרונית לשיטת הספירה ה •

ייצוג מספרים שלמים עם סימן •

ייצוג מספרים ממשיים עם סימן •

ייצוג תווים •

ת וההקסהדצימלית: חיבור, חיסור וכפלבינריפעולות חישוב בשיטות הספירה ה •

And, Or, Not, Xorפעולות לוגיות: •

EBCDIC, קוד 6-, קוד משלים לASCII, BCDקידוד במחשב: •

חשב: המבנה הבסיסי של המ3פרק

מטרות הפרק

להציג את היחידות הבסיסיות של המחשב ואת המבנה של כל אחת מהן כדי להבין כיצד תכנית •

מתבצעת בצורה מפורטת.

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

8081מחשב -ל מיקרולהכיר מושגים חשובים וללמוד מהי שפת סף ומהו המבנה ש •

להתייחס לרכיבים כאל קופסאות שחורות )בסכמת מלבנים מפורטת( ולתפקיד שלהם במסגרת •

המערכת.

פרק זה כולל חמישה סעיפים: יע"מ, זיכרון, יחידות קלט ופלט, פסים להעברת מידע בין יחידות הערה:

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

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

הנלמדים.

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

49

פירוט התכנים

אוגרים , ALUתפקידיו, מבנהו העקרוני, מרכיביו העיקריים ) –היע"מ –יחידת העיבוד המרכזית •

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

הזיכרון כאוסף של תאים שניתן לאחסן בהם נתונים והוראות, התא, כתובת התא וערך –הזיכרון •

אחסון –בית, מילה; פעולות על תאים המאוחסנים בזיכרון –מאוחסן בתא; יחידות זיכרון בסיסיות

ת, וכי היע"מ בינריהמידע מאוחסן בזיכרון בצורה אחידה, ועדכון מידע, אחזור מידע )חשוב להדגיש כי

–והשימושים בהם; נפחי זיכרון שונים –ראשי ומשני –זיכרונות מפרש אותו ו'מטפל' בו(; סוגי

KB ,MB ,GB

הממשק המחבר בין המשתמש, המתכנת והמחשב; מגוון יחידות הקלט והפלט, –יחידות קלט ופלט •

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

בתקשורת, וכן יחידות פלט כגון צג, מדפסת, רשם, המציגים טקסט, גרפיקה, קול וכו'

פסי בקרה, פסי נתונים ופסי כתובות –פסים להעברת מידע בין יחידות שונות •

מחזור ביצוע הוראת קריאה –היחידות השונות אופן הביצוע של הוראה במחשב וסוג המידע הזורם בין •

ומחזור ביצוע הוראת כתיבה

)המבנה העקרוני, סוגי האוגרים, מבנה הזיכרון 8081סכמת מלבנים של מחשב המבוסס על מיקרומעבד •

סגמנטים( –

: מבוא לשפת סף4פרק

פרק זה הוא פרק המבוא לחלק השני של הקורס העוסק בתוכנה.

מטרות הפרק

להציג את ההבדלים, את היתרונות ואת החסרונות של שפות תוכנה עיליות לעומת שפת מכונה ושפת סף •

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

ושפת סף מתייחסות למרכיבים פיזיים ופונות ישירות ליחידות המחשב בעוד שפה עילית מתייחסת

למרכיבים לוגיים כמו משתנים, הוראות בקרה, לולאות, מבני נתונים, כל זאת בלי להתייחס למימושם

במחשב

8081לכתוב תכנית בסיסית )הכוללת הוראות השמה וחישוב( בשפת סף למיקרומעבד •

להכיר את סביבת העבודה של טורבו אסמבלר, להריץ תכניות אסמבלי מוכנות ולכתוב תכניות פשוטות •

פירוט התכנים

הפעולה והנתונים בשפה עילית ובשפת סף –מרכיבי ההוראה •

שפת מכונה, שפת סף, שפה עילית –דורות של שפות תכנות •

דוגמה להוראה בשפת מכונה, החסרונות והיתרונות של כתיבה בשפת מכונה –שפת מכונה •

לעומת שפת מכונה ולעומת שפות תפקידה, היתרונות והחסרונות של השימוש בשפת סף –שפת סף •

עיליות

דוגמה להוראה פשוטה בשפת סף, למשל הוראה לחיבור שני אוגרים –מבנה ההוראות בשפת סף •

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

50

מרכיבים של שורת הוראה –מבנה תכנית בשפת אסמבלי •

, תוך כדי התייחסות להוראות האלה: 8081כתיבת תכנית אסמבלי בסיסית בשפת סף של מיקרומעבד •

חיבור, חיסור, כפל וחילוק; –אות להעברת נתונים )השמה( בין אוגרים; הוראות אריתמטיות הור

הוראות לוגיות, הזזה וסיבוב

8081: תכנות מתקדם בשפת סף של המיקרומעבד 5פרק

מטרות הפרק

ת להציג מנגנוני תכנות מתקדמים: לולאות, שגרות, פסיקות ומחרוזות; להציג שיטות מיעון המאפשרו •

ביצוע של הוראות השמה וחישוב בנתונים המאוחסנים בזיכרון; לתאר את אופן הפיתוח והביצוע של

תכניות במחשב ולהתנסות בכתיבת תכניות, בהרצתן ובניפוי שגיאות שיש בהן

להרחיב את השימוש בטורבו אסמבלר; לתאר מושגים הקשורים למבנה הזיכרון, למקטעים, למבנה •

מבלר ואסמבלי(; להתנסות בפיתוח ובכתיבה של תכניות בסביבה זו וללמוד תכנית בשפת סף )אס

טכניקות וכלים לניפוי שגיאות

פירוט התכנים

שימוש בזיכרון ובשיטות מיעון •

מותנית וקפיצה מותנית-קפיצה לא –הוראות הסתעפות )תנאי ולולאה( •

שגרות ושימוש במחסנית •

פסיקות תוכנה •

הוראות קלט ופלט •

הוראות מחרוזת •

קומפילציה, קישור, –שלבי פיתוח תכנית בשפת אסמלבר; שלבי ביצוע תכנית –הרצה וניפוי של תכניות •

טעינה, הרצה עד לקבלת הפלט; בדיקה וניפוי של שגיאות

: ההתפתחות של מחשבים מודרניים1פרק

מטרות הפרק

שנים במבנה המחשבים ובחומרה שלהם ואת להציג את ההתפתחויות ואת השינויים שחלו במהלך ה •

השינויים שתומכים בתוכנה ומאפשרים להריץ אפליקציות גדולות ומורכבות בד בבד עם צמצום זמן

לא השתנתה, ושהשיפורים בביצועים מושגים von Neumannהעיבוד; להדגיש שהתפיסה המבוססת על

הודות לשיפורים במהירויות העיבוד ובגודל הזיכרון

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

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

מאפיינים כגון מהירות עיבוד, גודל מילה וזיכרון –לגבי כל משפחה –לפרט

יח"ל( 5-יחידות )השלמה ל 2מדעי המחשב /

51

פירוט התכנים

על, מחשב מקבילי )הכולל כמה -גי מחשבים ומושגים: מיקרומחשבים, מחשבים גדולים, מחשביסו •

מעבדים(

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

ביט, 61סכמת מלבנים, מבנה המעבד וסוגי האוגרים, פס נתונים של –חזרה והעמקה – 8081 •

(, מעבדי עזר לשיפור ביצועי המערכת BIU, EUות משני שלבים: )לביצוע הורא pipelinedארכטיקטורת

)מעבד נתונים מספריים, מעבד קלט/פלט(

ביט, שיפור בשימוש במעבד מתמטי, אופני 36מבנה המעבד וסוגי האוגרים, פס נתונים של – 80481 •

בת חמישה pipelinedטקטורת י(, ארכProtected Mode, מצב מוגן Real Modeעבודה )מצב אמיתי

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

, הרשאות )זכויות( גישה למקטעי תכנית ונתונים, הגנה על (time switching)מיישום אחד למשנהו

התקני קלט ופלט המשותפים ליישומים

ביט, 14פס נתונים של – 40481ם שחלו במעבד זה לעומת סכמת מלבנים של המעבד; השיפורי –פנטיום •

יחידה לחיזוי כתובת קפיצה, (u-pipeline-ו v-pipeline)שתי יחידות ביצוע מקבילות

(branch prediction)

סכמת מלבנים של המעבד, הגברת מהירות המעבד באמצעות הגדלת מספר –פנטיום פרו •

6והגדלת מספר ההוראות למחזור שעון, זיכרון מטמון ברמה הטרנזיסטורים, הגברת מהירות השעון

אר הבקבוק' של ו'צו – SUPER pipelining שנועד להתגבר על( dyanmic execution)מובנה, ביצוע דינמי

. von Neumann מודל