פורסם 2009 בנובמבר 1816 שנים שלום חברים,קיבלתי תרגיל בית לקלוט 2 מספרים עם הstdio - scanf/printf, לעשות חיבור וכפל ביניהם ולהדפיס את התוצאות.ממה שהייתי בשיעורים לא הבנתי הרבה, וגם הסברים של חברים לא הועילו במיוחד.אודה לכם אם תוכלו אולי להסביר לי קצת על הרגיסטרים הקיימים, באילו אני יכול להשתמש ואיך?והכי חשוב כמובן איך פותרים את התרגיל? (יש עוד לתרגיל, אבל אני מניח שאחרי שאני אבין את החלק הזה, יהיה לי יותר ברור להתחיל בעצמי).תודה מראש לעוזרים.
פורסם 2009 בנובמבר 1816 שנים לחיבור וחיסור משתמשים בדרך כלל ב eaxיש לך 2 משתנים, תעשה סך הכל mov eax,mishtane1add eax,mishtane2בשביל כפל תשתמש בפקודה mul במקום add
פורסם 2009 בנובמבר 1816 שנים מחבר תודה רבה על העזרה קודם כל.שאלה ראשונה - איך אני יודע שבמשתנה 1 ומשתנה 2 באמת קיימים הערכים שאני רוצה?איפה ואיך נכנס פה scanf?
פורסם 2009 בנובמבר 1816 שנים איך אתה יודע? אתה מכניס לתוכם את הקלט מהשתמש.פונקציית scanf היא פונקציה ששייכת לC וכל כן צריך לבצע call על מנת לקרוא להאני לא מנוסה בשימוש בקלט מהסוג הזה
פורסם 2009 בנובמבר 1916 שנים לפני שאתה קורא לפונקציה כלשהי אתה צריך לדחוף למחסנית את הארגומנטים שלה. אם לדוגמא אתה רוצה לקרוא מספר, ראשית אתה צריך להכניס למחסנית את הכתובת בזיכרון שבה ישמר המספר (הארגומנט השני) ואז את הכתובת של מחרוזת המכילה "%d" (הארגומנט הראשון). כעת אתה קורא לפונקציה scanf באמצעות הפקודה call scanf. שים לב שאת הארגומנטים מכניסים בסדר הפוך משום שמחסנית עובדת בשיטת LIFO.
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.