2004 - A

1. מה זה "כרוכית"?

											
&
@
©
כל התשובות נכונות


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

											
גרגרים, פיקסלים, טרנזיסטורים
פיקסלים, טרנזיסטורים, גרגרים
טרנזיסטורים, גרגרים, פיקסלים
כולם שווים


3. מה עושה קוד האסמבלי 80x86 הבא:
not eax
neg eax
מוסיף 1 ל eax
מחסר 1 מ eax
לא משנה את eax
ערך מוחלט ל eax


4. מה היא הצורה הגיאומטרית של המשוואה 3x2-y2 =3 ?

											
											מעגל
											
אליפסה
משולש
היפרבולה


5. מה ידפיס הקטע בשפת C הבא?
int a = 1, b = 2, c = 3, d = 4;
a,b,c,d = d,c,b,a;
printf("%d-%d-%d-%d", a, b, c, d);
4-3-2-1
1-2-3-4
4-3-2-4
1-3-2-1


6. כמה פרשים לכל היותר ניתן להציב על לוח שחמט בלי ש אף אחד מהם יאיים על אחר?

											
4
8
16
32


7. מה מדפיס קטע הקוד הבא?
int j = 5;
while(j-- >= 2)
{
printf("%s\n", "%%%%%%%"); /* we use %s\n to
printf("%s\n", " %%%%% "); * avoid typing
printf("%s\n", " %%% "); * double percentage
printf("%s\n", " % "); * signs, because
if(j == 1) continue; * printf uses %
printf("%s\n", " %%% "); * as an escape code
printf("%s\n", " %%%%% "); */
printf("%s\n", "%%%%%%%");
printf("\n");
}
4 שעוני חול
3 שעוני חול
4 מלבנים
3 שעוני חול ומשולש אחד


8. מהי הצורה הזולה ביותר להדפיס עמוד שחור-לבן כתוב צפוף?

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


9. מה נמדד בערך ה - BaudRate?

											
כמות הביטים שניתן להעביר בשניה (אין הבדל בין buadrate ל bitrate)
כמות הבייטים שניתן להעביר בשניה
מספר שינויים באות התקשורת בשניה (כגון שינוי בתדר)
כמות הזרם שניתן להעביר דרך קו תקשורת מבלי לשרוף את הרכיבים שבו, ומבלי להכניס שגיאות תקשורת לקו


10. מה הבעיה עם תוכנית C הבאה:
main()
{
double x = 2.5, y = 5.0, z = 0;
double *px = &x, *py = &y, *pz = &z;
*pz=*py/*px;
}
יעוף כי יש חלוקה ב 0
לא יעבור הידור כי חסר תו-רווח
קדימות אופרטורים
אין בעיה


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


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


13. מהו זמן הריצה שדרוש כדי לגלות האם קיימים שני מספרים בסדרת קלט של n איברים שסכומם אי-זוגי?
(O(1
((O(sqrt(n
(O(n
(O(n2



14. מה עושה הקוד האסמבלי 80x86 הבא:
neg eax
sbb eax, eax
neg eax
ממיר ממספר שלם לערך בוליאני
מאפס את ערך האוגר eax
משנה את eax ל 1
ממיר מספר שלם לערך הנגדי


15. מה מהבאים לא נכון לומר על רשימות מקושרות?

											
כל איבר ברשימה מכיל מצביע לאיבר הבא אחריו
ברשימה מקושרת דו-כיוונית יש לכל איבר 2 מצביעים
כל רשימה מקושרת(חד כיוונית) היא למעשה מקרה פרטי של עץ בינארי
הגישה לאיבר הN ברשימה מתבצעת בסיבוכיות זמן קבועה, בלי תלות ב - N 


16. מה מהבאים איננו פיתוח של חברת Sun Microsystems?

											
Solaris
Java
פרוטוקול NFS
Javascript


17. *עבור אילו ערכי BX, יודפס התו 'y' לאחר הרצת קוד האסמבלי 80x86 הבא?
MOV AH,02
MOV DL,'y'
NEG BX
JNO PRINT
MOV DL,'n'
PRINT:
INT 21
כל הזוגיים
כל השליליים
רק איבר אחד
קיימים שבעה ערכים


18. בפרוטוקול התקשורת "TCP", מה קורה כאשר הTTL בכתובת IP מגיעה ל0:

											
תשלח הודעת ICMP Destination host unreachable
תשלח הודעת Time Exceeded
ההודעה תיזרק ללא שום הודעה, שכן שכבה 3 איננה מבטיחה אמינות
הTTL יחזור חזרה ל255, ויודלק ביט מיוחד המעיד על Overflow


19. מה זה Heap?

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


20. Java ל Sun, זה כמו C# ל:

											
תפוד
מיקרוספט
סטיבי וונדר
מדפסות


21. *האם ניתן לממש רשימה דו-מקושרת באמצעות מצביע בודד בכל איבר?

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


22. באיזה שנה הומצא הטרנזיסטור הראשון?

											
1906
1947
1953
1976


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

											
3004
4008
12
3006


24. המשך את הסדרה :
Pascal, readln, println, C, scanf,…
101
writeln
++C
Bsd UNIX


25. מנגנון ה garbage collection נועד:

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


26. המעבדים המודרניים משתמשים בזיכרון מטמון על מנת:

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


27. המחשב שלך תקין לחלוטין , אבל אין לך שליטה על העכבר , וישנה פעילות מוזרה בפורט 12345 , כנראה :

											
DOOM רץ ברגע , לכן אין שליטה בעכבר
הפסקת חשמל בין הCPU לזיכרון
מקש לחוץ במקלדת מרגע הדלקת-המחשב
פרצו אליך בעזרת אחד ויש לך סוס טרויאני פעיל במערכת


28. כיצד נשחרר מערך שהוקצה בjava בעזרת new?

											
delete
free
dealloc
הזיכרון משוחרר אוטומטית


29. מה יהיה ערכו של Y לאחר קוד ה-C הבא:
Y = 1;
Y += (Y = 0 ? 5 : 2);
5
4
6
3


30. נשתמש בטכנולוגית השן הכחולה כדי

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


31. מה משותף ל 0x72, 0x74, 0x76, 0x70?

											
כולם אותיות קטנות ב ASCII
כולם קפיצות מותנות באסמבלי של 80x86
כולם מספרים פריקים
כל התשובות נכונות


32. איזה מהפעולות הבאות תבצע כפל של מספרים בייצוג fixed point 16.16?

											
x>>16)*(y>>16))<<16))
x*y)>>16)
x>>16)*y)
x*y


33. *מה יותר גדול - המשכורת הממוצעת בעולם, או ממוצע המשכורת הממוצעת בכל מדינה?

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


34. מה מחשבת הנוסחה הבאה עבור x שלם בן 32 סיביות:
x - x/2 - x/4 – x/8 – x/16 – x/32 - … - x/232
תמיד אפס
זוגיות מספר הסיביות הדלוקות
מספר הסיביות הדלוקות
זוגיות מספר הסיביות הכבויות


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

											
HELO
WELCOME
SHALOM
WYSIWYG


36. מה הבעיה בקוד C הבא:
struct s{
char *x;
int y;
};

struct s list[] = {{"hello", 5}, {"test", 4}, {"end", 3}};
for (int i = 0; i < sizeof(list); i++) {
if (list[i].y > 0) printf("%s(%d)", list[i].x, list[i].y);
}
המשתנה i מוגדר ב - scope לא נכון
sizeof זה מאקרו שלא מתחשב באיטרטורים
list היא מילה שמורה בשפת C
בזמן ריצה תהיה חריגה מהמערך


37. התיקון לשאלה הקודמת יהיה:

											
להגדיר "int i;" בשורה חמישית
(define sizeof(13 #
לשנות מ - list ל - mist
(sizeof(list)/sizeof(s


38. מה עושה הביטוי  (0xa08a28ac & (1 << x ?

											
בודק האם מספר בן 5 סיביות הוא ראשוני
מחלץ פיקסל מתמונה של נגטיב של חתול
בודק, לפי אינדקס מצד ימין, האם flag מסוים הוא flag אריתמטי
בודק האם x מצביע לזיכרון שהוא "paged-in"


39. כמה זמן ברציפות יכולה סוללה רגילה של 9 וולט להפעיל נורית של 2 וואט?

											
שניות ספורות
שעות ספורות
ימים ספורים
שנים ספורות


40. הרצת "df" ביוניקס:

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


41. מה יהיה ערכו בקירוב של הערך 0x4313756D בתור float בסטנדארט IEEE 754?

											
147.458
123.321
431.375
228.149


42. סיבוכיות מיון אלפא-בתי של n מילים בעלות גודל משתנה הוא לכל הפחות:

(O(10*n
(O(n*logn
(O(logn
(O(n2



43. נשתמש בעץ בינארי מאוזן כדי:

											
לבצע חיפוש בסיבוכיות (O(logn
להכפיל מספרים ממשיים ביעילות
לממש תוכנית שתפקידה חישוב חזקות של מספרים ממשיים
לשמור נתונים שאח"כ נצטרך לגשת אליהם בצורה סדרתית


44. פרוטוקול SSL משתמש:

											

בהצפנה סימטרית
בהצפנה אסימטרית
א ו-ב נכונות
בהצפנה קוונטית



45. בסוף הפונקציה (f(long a, long b תתבצע פקודת האסמבלי: RET 8
וזאת על מנת להוריד את שני המשתנים a ו - b מהמחסנית. הפונקציה printf לעומת זאת, יכולה לקבל מספר משתנה של פרמטרים.
כיצד אם כן יודע הקומפיילר איזה ערך לשים בפקודה RET N?


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


46. מה תפקידה של טבלת ARP?

												
לקשר בין כתובת IP לכתובת פיזית
טבלת Gateways
טבלת סטטיסטיקה על קצב התקשורת
לקשר בין שם Host לבין כתובת הIP


47. מה הבעיה בקטע קודC הבא?
struct sockaddr_in sin;
int s;
s = socket(AF_INET, SOCK_DGRAM, 0);
sin.sin_port = 8000;
sin.sin_addr.s_addr = INADDR_ANY;
bind(s, (struct sockaddr *) &sin, sizeof(sin));
מספרPort של TCP על גבי UDP
שימוש ב - AF_INET במקום AF_TCPIP
חוסר פורטביליות בין מעבדים
sizeof על struct שגודלו נקבע בזמן ריצה


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

												
אגורות ספורות
שקלים ספורים
יותר ממאה ₪
תלוי ב screen-saver


49. מה עושה קטע הקוד הבא בשפת 80x86?
                XOR     AX,AX
                XOR     DH,DH
TRY:            CMP     CL,1
                JBE     LASTA
                MOV     DL,[SI]
                SUB     DL,"0"
                ADD     AX,DX
                MOV     BX,AX
                SHL     AX,1
                SHL     AX,1
                SHL     AX,1
                ADD     AX,BX
                ADD     AX,BX
                INC     SI
                LOOP    TRY
LASTA:          MOV     DL,[SI]
                SUB     DX,"0"
                ADD     AX,DX
                RET
סופר סכום ספרות
מבצע כפל של מספרים גדולים
ממיר מחרוזת מספרית למספר
ממיר מבסיס עשרוני לבסיס אוקטלי


50. ככותב קטע הקוד בחר להשתמש בפקודה XOR DH, DH, שכן הערך בDL משתנה מיידית, ואין צורך לאפסו.
האם במקרה זה XOR DH, DH היא הפקודה הכי קצרה אשר מאפסת את DH(ושאינה פוגעת בתפקוד התוכנית)?

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


51. מה הספרות הבאות בסדרה ... ,0,1,1,0,1,1,1,0,0,1,0,1,1,1,0,1,1,1,1 ?

												
0,0,0
0,1,1
1,0,1
1,1,0


52. * באיזה מקום בסדרה לעיל יופיעו לראשונה עשרה אפסים רצופים?

												
בערך 100
בערך 1,000
בערך 10,000
לעולם לא


53. מה יהיה x כדי שיודפס "ok" בקוד Python הבא:
if type(x) == type(int): print "ok"
0
(int(0
0L
types.IntType


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