۰
subtitle
ارسال: #۱
  
دو سوال سال ۹۰ و ۹۱ مربوط به فصل مدیریت حافظه
سلام
دوستان اگه کسی توی این دقایق وقت اضافه تو سایت هست یه کمکی هم به من بکنه ممنون میشم، من روی این دوتا سوال خیلی گیرم کسی هست بتونه ساده و روان توضیح بده ؟ توی کتاب ها خیلی گنگ توضیح داده بودن
سوال اول :
سوال دوم:
دوستان اگه کسی توی این دقایق وقت اضافه تو سایت هست یه کمکی هم به من بکنه ممنون میشم، من روی این دوتا سوال خیلی گیرم کسی هست بتونه ساده و روان توضیح بده ؟ توی کتاب ها خیلی گنگ توضیح داده بودن
سوال اول :
سوال دوم:
۰
ارسال: #۲
  
RE: دو سوال سال ۹۰ و ۹۱ مربوط به فصل مدیریت حافظه
ببینید شما یه آرایه از رکوردا دارید
حالا فرض کنید ما میخوایم به عنصر سوم و فیلد دومش دست پیدا کنیم
قبل از عنصر سوم ما اگه آرایه رو از صفر در نظر بگیریم عناصر صفر و یک و دو هستن و بعد عنصر سوم
و هر عنصر هم که یه رکورد هستش ۹ بایته
قبول دارید که عنصر سوم ما بعد از سه تا ۹ بایتی هست
پس در واقع اگه عنصر ما I
باشه آدرسش میفته بعد از ۹*I حالا این آفست ماست باید با شزوع در نظرش بگیریم یعنی باید بعلاوه a بشه
خو ما خونه رو پیدا کردیم حالا فیلد مورد نظر تو این رکورد کجا میفته اونم مثل پیدا کردن خود خونه هست ولی چون اینجا دیگه فیلدا رو باید رد کنیم و اندازه هاشون متفاوته باید کل اون فیلدای قبلیش رو اندازه هاشونو جمع کنیم تا بفهمیم آدرس این فیلد مون کجا میشه
گزینه ۲
حل سوال ۲۸ : ( اینجا چون آلفا پایه است یعنی از یک شروع نشده ممکنه تو تعریف از {۲۰//۸} a : int پس آلفا الان ۸ است و وقتی میگم [a[13,4 خب باید نسبت به پایه حساب بشه و در واقع ۱۳ میشه ۸-۱۳ یعنی سطر پنجم )
خود صورت سوال گفته تو سطر یک یه عنصر
سطر دوم دو عنصر
سوم سه عنصر همین طور تا آخر
پس ما برای دستیابی به مثلا عنصر ۴ از سطر ۵ ( ۸-۱۳)اینطوری میشه ۱+۲+۳+۴ که
یه عنصر سطر اول و دو عنصر سطر دوم و سه عنصر سطر سوم و ۴ عنصر از سطر چهار رو رد کنیم تا سطر ۵ مون برسیم قبول
این یعنی همون سیگما مون که باید در اندازه هر خونه ضرب بشه اینجا گفته ۲ حالا آدرس ستون که فک نمیکنم مشکلی داشته باشی مثل همیشه حساب میشه (۱-۴) باز باید در اندازه خونه ضرب شه ،اون m البته m نیست یه حرف دیگه است میشه آدرس شروع ذخیره سازی
حالا فرض کنید ما میخوایم به عنصر سوم و فیلد دومش دست پیدا کنیم
قبل از عنصر سوم ما اگه آرایه رو از صفر در نظر بگیریم عناصر صفر و یک و دو هستن و بعد عنصر سوم
و هر عنصر هم که یه رکورد هستش ۹ بایته
قبول دارید که عنصر سوم ما بعد از سه تا ۹ بایتی هست
پس در واقع اگه عنصر ما I
باشه آدرسش میفته بعد از ۹*I حالا این آفست ماست باید با شزوع در نظرش بگیریم یعنی باید بعلاوه a بشه
خو ما خونه رو پیدا کردیم حالا فیلد مورد نظر تو این رکورد کجا میفته اونم مثل پیدا کردن خود خونه هست ولی چون اینجا دیگه فیلدا رو باید رد کنیم و اندازه هاشون متفاوته باید کل اون فیلدای قبلیش رو اندازه هاشونو جمع کنیم تا بفهمیم آدرس این فیلد مون کجا میشه
گزینه ۲
(۱۵ بهمن ۱۳۹۳ ۰۱:۰۹ ق.ظ)Aliteh نوشته شده توسط: سلام
دوستان اگه کسی توی این دقایق وقت اضافه تو سایت هست یه کمکی هم به من بکنه ممنون میشم، من روی این دوتا سوال خیلی گیرم کسی هست بتونه ساده و روان توضیح بده ؟ توی کتاب ها خیلی گنگ توضیح داده بودن
سوال اول :
سوال دوم:
حل سوال ۲۸ : ( اینجا چون آلفا پایه است یعنی از یک شروع نشده ممکنه تو تعریف از {۲۰//۸} a : int پس آلفا الان ۸ است و وقتی میگم [a[13,4 خب باید نسبت به پایه حساب بشه و در واقع ۱۳ میشه ۸-۱۳ یعنی سطر پنجم )
خود صورت سوال گفته تو سطر یک یه عنصر
سطر دوم دو عنصر
سوم سه عنصر همین طور تا آخر
پس ما برای دستیابی به مثلا عنصر ۴ از سطر ۵ ( ۸-۱۳)اینطوری میشه ۱+۲+۳+۴ که
یه عنصر سطر اول و دو عنصر سطر دوم و سه عنصر سطر سوم و ۴ عنصر از سطر چهار رو رد کنیم تا سطر ۵ مون برسیم قبول
این یعنی همون سیگما مون که باید در اندازه هر خونه ضرب بشه اینجا گفته ۲ حالا آدرس ستون که فک نمیکنم مشکلی داشته باشی مثل همیشه حساب میشه (۱-۴) باز باید در اندازه خونه ضرب شه ،اون m البته m نیست یه حرف دیگه است میشه آدرس شروع ذخیره سازی
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close