ניתוח הבעיה: פירוק והרכבה של מספר

5
ןןןןן ןןןןן, ןןןן ןןןןן ןןןן ההההה ההההה: ההההה הההההה הה הההה2 5 9 4 2 5 9 4 ההההה: ההההה ההההה:

Upload: colby

Post on 05-Jan-2016

67 views

Category:

Documents


0 download

DESCRIPTION

ניתוח הבעיה: פירוק והרכבה של מספר. המספר ההפוך :. המספר :. 2 5 9 4. 2 5 9 4. תהליך ראשי. קלוט Num אתחל NewNum ל - 0 parbegin פירוק הרכבה parend. תהליך הרכבה. צרכן של Num. תהליך פירוק. 0 New. D Num mod 10. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ניתוח הבעיה: פירוק והרכבה של מספר

אהובה תקותי, מכון ויצמן למדע

ניתוח הבעיה:פירוק והרכבה של מספר

2 5 9 4 2 5 9 4

המספר: המספר ההפוך:

Page 2: ניתוח הבעיה: פירוק והרכבה של מספר

אהובה תקותי, מכון ויצמן למדע

תהליך ראשי

Numקלוט 0ל - NewNumאתחל

parbeginפירוק

הרכבה parend

Page 3: ניתוח הבעיה: פירוק והרכבה של מספר

אהובה תקותי, מכון ויצמן למדע

תהליך הרכבהתהליך פירוק

בצע Num > 0כל עוד בצע Num > 0כל עוד

D Num mod 10

Num Num div 10

New New*10 + D

Dיצרן של

Dצרכן של

Numיצרן של

Numצרכן של

מי המשאבים המשותפים?

מה הן דרישות התיאום לגביהם?

דרישת תיאום D ייצור :1

וצריכתו יתבצעו לסירוגין.

:2דרישת תיאום וצריכתו Numייצור

.יתבצעו לסירוגין

0 New

Page 4: ניתוח הבעיה: פירוק והרכבה של מספר

אהובה תקותי, מכון ויצמן למדע

תהליך הרכבהתהליך פירוק

בצע Num > 0כל עוד בצע Num > 0כל עוד

D Num mod 10

Num Numdiv 10

Dיצרן של

Dצרכן של

Numיצרן של

Num צרכן של

wait(FullD)

wait(EmptyD)

signal(FullD)

signal(EmptyD) wait(EmptyNum)

wait(FullNum)

signal(EmptyNum)

signal(FullNum)

wait(FullNum)

New New*10 + D

wait(FullNum)

Page 5: ניתוח הבעיה: פירוק והרכבה של מספר

אהובה תקותי, מכון ויצמן למדע

אתחול הסמפורים :

EmptyD

FullD

EmptyNum

FullNum

1

0

0

0

Num במשפט מקבל את ערכו הראשון

הקלט בתהליך הראשי. בסיבוב הראשון

Num של הלולאה (בתהליך הפירוק)

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

עד שתהליך ההרכבה יבצע את

בדיקת התנאי על ערכו הראשון

. Numשל

על הסמפור הזה waitמשפט

מתבצע בסוף הלולאה של תהליך

החל מהסיבוב השני,ההרכבה. לכן

הוא גורם לבדיקת התנאי לחכות

יקבל את ערכו Numעד ש

בתהליך הפירוק.