לממש פרוטוקול של Multi-Master על Bus של 2 קווים (כהמשך ל I2C),
ז"א אם יש n מאסטרים עם עדיפות מ 1 עד n על הקו ואיך מתמודדים עם כמה מאסטרים שמשתלטים ל הקו בו"ז.
- אח"כ ביקשו ממני לממש מערכת סינכרונית פשוטה (2 D-FF בטור עם אותו שעון).
שאלו מה קורה אם ה FFs מקבלים שעונים שונים, האם זו עדיין מערכת סינכרונית.
- שאלו מה קורה עם נופל גרגר לכלוך על קו הכניסת DATA ל FF השני ואיך ניתן לפתור את הבעיה הלי לשנות שום חומרה (עובי המוליך קטן בגלל הלכלוך -> התנגדות המוליך גדלה -> תדר המידע קטן. ניתן להגדיל את קצב השעון בשביל לפתור את הבעיה).
- שאלו מה קורה אם גרגר הלכלוך נופל על קו קו השעון והאם ניתן לפתור את הבעיה בלי לשנות חומרה (אותה בעיה על קו השעון ואי אפשר לפתור אותה -> הצ'יפ הולך לפח).
שאלה ראשונה על איך להכניס איבר לרשימה מקושרת ממויינת
שאלות מתוך הראיון
איך להכניס איבר לרשימה מקושרת ממויינת?
תשובות
הוסף תשובה
|
לצפיה בתשובות
ספטמבר 2020
רצים עם שני פוינטרים עד ל- NULL עוקבים עד שמוצאים את האיבר הקטן יותר עם הפוינטר הימני יותר. ברגע שמצאנו מכניסים את האיבר בין הגדול יותר לקטן יותר, אם הגענו ל- NULL(כולם גדולים יותר ממנו) מוסיפים אותו בסוף
התהליך היה מהיר, מענה ניתן באופן מהיר בנוגע לתשובה של קבלה או לאו
שאלות מתוך הראיון
לרשום פונקציה בפסאודו-קוד שמחזירה את מספר הביטים הדולקים בבינארי (כאשר מקבל מספר כלשהוI)
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2016
כעיקרון צריך לחלק ב2 את המספר כל הזמן וככה מוצאים את התשובה אך הפיתרון לא יעיל
הפיתרון היעיל הוא בהנחה ויש זיכרון בלתי מוגבל ואז משתמשים במערך אינסופי וזהו.
אוגוסט 2016
הפתרון היעיל ביותר לשאלה הוא שימוש בlookup table בגודל 256 שם מאחסנים את מספר הביטים הדלוקים בכל בית, וב - O(1) ניתן לדעת כמה דלוקים בכל בית. אם קיבלנו int נבצע את הפעולה 4 פעמים.
1. בנה אוטומט שבודק האם מספר בינארי מתחלק ב - 5 ( מקבלים ספרה,ספרה )
2. החלף בין ספרות הנמצאות במקום הזוגי לאי זוגי
תשובות
הוסף תשובה
|
לצפיה בתשובות
אפריל 2016
1. בניית אוטומט פשוטה , לוקחים כול פעם ספרה חדשה ומפעילים מצב באוטומט לפיה .(האוטומט יכיל 5 מצבים לפי השאריות ).
2. ניתן לבצע זאת באמצעות פעולות XOR/OR/AND/MOVE במספר פעולות קבוע מראש .