עמוד:148

עד כה הצגנו הוראת קפיצה אחת : ההוראה , JNZ שמשמעותה : אם דגל האפס הוא , 0 דלג להוראה שאליה מוצמדת התווית . השתמשנו בה במנגנון הבקרה של לולאת הקלט . בסעיף 1 . 3 תיארנו בקצרה את הוראות הקפיצה שב . 8086- כאמור , ככלל , במיקרו-מעבד 8086 ישנן הוראות קפיצה מותנית והוראות קפיצה שאינה-מותנית . הוראת קפיצה שאינהמותנית תגרום לקפיצה , ללא קשר למצב הדגלים . הוראת קפיצה מותנית תגרום לקפיצה רק אם מצב הדגלים מתאים לתנאי שבהוראת הקפיצה . המבנה של כל הוראות הקפיצה דומה , והוא מכיל אופרנד אחד המציין תווית של ההוראה שיש לדלג אליה . כאשר התכנית הכתובה בשפת סף תתורגם לשפת מכונה , התווית תתורגם לערכה המספרי של הכתובת המתאימה . אפשר לרשום את הכתובת המתאימה כמספר , ואולם גישה זו אינה מומלצת , בין השאר , משום שהיא מקשה את עריכתם של שינויים כאשר מיקום ההוראה שאליה קופצים משתנה . בשפת סף התווית מגדירה את טווח הקפיצה ולא רק את סוג הקפיצה ( קפיצה מותנית או קפיצה בלתי מותנית . ( במילים אחרות , התווית מגדירה את המרחק של ההוראה שאליה יש לקפוץ מהוראת הקפיצה . ב8086- ניתן להגדיר כמה הוראות קפיצה : הוראת קפיצה קצרה , הוראת קפיצה קרובה והוראת קפיצה רחוקה – המתוארות באיור : 1 . 53 בהוראה קפיצה קצרה , ( SHORT ) בשפת המכונה של ה , 8086- כתובת המטרה מבוטאת באמצעות בית אחד . בשיטת המשלים ל , 2- בית זה מציין את המרחק של כתובת המטרה ביחס לערכו של . IP קפיצה קצרה יכולה אפוא להתבצע לכתובת מטרה הנמצאת בסגמנט הקוד הנוכחי ואינה מרוחקת יותר מ – 128- עד + 127 מהכתובת שIP- מצביע עליה . ( כזכור , לפני ביצוע הקפיצה , IP מצביע על כתובת ההוראה הנמצאת בזיכרון מיד לאחר הוראת הקפיצה ( . הוראת קפיצה קצרה יכולה להיות הוראת קפיצה מותנית או הוראת קפיצה שאינה מותנית . אבל ב8086- כל הוראות הקפיצה המותנית הן הוראות קפיצה קצרה . בהוראה קפיצה קרובה , ( NEAR ) בשפת המכונה של ה , 8086- כתובת המטרה מבוטאת באמצעות מילה ( שני בתים . ( קפיצה קרובה יכולה אפוא להתבצע לכתובת מטרה הנמצאת בכל מקום בתוך סגמנט הקוד הנוכחי . הוראת קפיצה קרובה יכולה להיות רק הוראת קפיצה בלתי מותנית . בהוראה קפיצה רחוקה ( FAR ) בשפת מכונה של ה8086- כתובת המטרה יכולה להימצא בסגמנט קוד חדש . בספר הזה לא נדון בשימוש בהוראה רחוקה .

מטח : המרכז לטכנולוגיה חינוכית


לצפייה מיטבית ורציפה בכותר