נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
מדעי המחשב
RSS UnderWarrior Forums : RSS מדעי המחשב
נושא

נושא: MIPS שאלה

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
תNר
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 31 July 2007 בשעה 12:36 | IP רשוּם
ציטוט תNר

אם יש לי פקודת BRANCH אז- מחשבים את הכתובת של היעד.

 1.למה עושים SHIFT LEFT 2?

2. למה צריך להוסיף את הPC של הפקודה הבאה? 

חזרה לתחילת העמוד הצג את כרטיס החבר של תNר חפש הודעות אחרות של תNר בקר בדף הבית של תNר
 
11010010110
פורומיסט על
פורומיסט על
סמל אישי

הצטרף / הצטרפה: 23 April 2006
משתמש: מנותק/ת
הודעות: 2621
נשלח בתאריך: 31 July 2007 בשעה 16:08 | IP רשוּם
ציטוט 11010010110

שאלה - אתה לומד בטכניון או במקום אחר ?

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

זה הפקודות והמשמעות שלהם בעולם החיצוני :
http://www.mrc.uidaho.edu/mrc/people/jff/digital/MIPSir.html

SL2 :

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

PC :
נניח שהאורך של התוכנית שלך ארוך יותר מהטווח שניתן
לכתוב בהוראה של הקפיצה. כלומר - יש בתוכנית 2 שורות
שמתאימות להיות המטרה של הקפיצה. מתוך השורות האלה
בוחרים את זאת שנמצאת באותו אזור בתוכנית שבה נמצאת
הוראת ה branch.

חזרה לתחילת העמוד הצג את כרטיס החבר של 11010010110 חפש הודעות אחרות של 11010010110
 
תNר
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 31 July 2007 בשעה 17:28 | IP רשוּם
ציטוט תNר

<לומדת במקום אחר>.

תודה.

 

 

שאלה חדשה:

האם ניתן להוסיף פקודת מכונה swap המחליפה בין שני ערכי רגיסטרים בלי לשנות את מבנה בלוק הרגיסטרים (register file)?

אם כן- כיצד?

אם לא- למה?

 

ומה ההבדל בין write register ל write data?

חזרה לתחילת העמוד הצג את כרטיס החבר של תNר חפש הודעות אחרות של תNר בקר בדף הבית של תNר
 
11010010110
פורומיסט על
פורומיסט על
סמל אישי

הצטרף / הצטרפה: 23 April 2006
משתמש: מנותק/ת
הודעות: 2621
נשלח בתאריך: 31 July 2007 בשעה 17:53 | IP רשוּם
ציטוט 11010010110

את יכולה לכתוב תוכנית ל MIPS שתעשה את זה.

אם יש לך פעולת XOR אז ניתן להחליף בין האוגרים על ידיי 3
פעולות XOR :
קוד:
1 = 1 + 2
2 = 1 + 2
1 = 1 + 2


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

בכל מקרה אם תוכנית יכולה לעשות את זה אז את יכולה לממש
בתוך ה control את מה שהתוכנית עושה.




הבעיה מגיעה אם ה control של המערכת הוא טבלת אמת (עובד
ללא שעון). יש לך הזדמנות לכתיבה אחת (בעת ביצוע ההוראה)
ואת אמורה לכתוב ל 2 אוגרים.

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




write register זה כתובת האוגר שאליו כותבים

write data זה מה כותבים


חזרה לתחילת העמוד הצג את כרטיס החבר של 11010010110 חפש הודעות אחרות של 11010010110
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

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

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