עבור לתוכן

שאלה נוספת באסמבלי והמחסנית

Featured Replies

פורסם





mov eax,4
push dword "DCBA"
mov ebx,1
mov ecx,esp
mov edx,4
int 0x80
add esp,4

mov eax,4
push dword 0x44434241
mov ebx,1
mov ecx,esp
mov edx,4
int 0x80
add esp,4

אשמח לקבל הסבר מדוע הקוד הראשון מדפיס

DCBA

ואילו השני,

ABCD.

44434241 זה הקידוד אסקי של DCBA, אז משהו לא מסתדר לי כאן..זה לא אמור שקול?

פורסם

כמו בת'רד האחר, זה עניין של endianity. כיוון שהמעבד הוא little endian, כשדוחפים את המספר 0x44434241 אז הבית התחתון ביותר הוא 0x41, הבית אחריו הוא 0x42, זה שאחריו הוא 0x43 וזה שאחריו הוא 0x43.

לעומת זאת כשדוחפים את המחרוזת "DCBA" אז הוא מכניס את הבתים ככה שהבית הראשון הוא D, זה שאחריו הוא C, וכן הלאה.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים