כתיבת קוד — שיעור 29
מ-C לאסמבלי — Reverse Engineering בסיסי
כל 1 משימות הקוד שנשמרו מהשיעור מופיעות כאן, עם דרישות, דוגמאות וקוד פתיחה. אפשר לכתוב פתרון בעורך המקומי וללחוץ על „בדיקת AI” לקבלת ציון, רמזים והערות.
T3 · בינוני300 נק'~18 דק'analysis
Decompilation — מה מחשב הקוד?
ה-Assembly הבא מקבל n ב-rdi. עקבו אחריו והבינו מה הוא מחשב. עבור n=6 (rdi=6), מהו הערך הסופי ב-rax? הגישו מספר עשרוני.
; rdi = n (הקלט)
xor eax, eax ; sum = 0
xor ecx, ecx ; i = 0
.loop:
cmp ecx, edi
jg .done ; אם i > n -> יציאה
add eax, ecx ; sum += i
inc ecx ; i++
jmp .loop
.done: ; rax = התוצאה
דוגמאות
(פורמט) → מספר, למשל 21
הפתרון נשמר מקומית אוטומטית.