تالار گفتمان مانشت

نسخه‌ی کامل: فناوری اطلاعات سال 84- آرایه - انتقال اندیس؟!
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
توی این سوال چرا انتقال اندیس انجام میشه؟

آی تی 84: اگر آدرس شروع آرایه A در حافظه 100 باشه و 4 بایت برای هر متغیر int نیاز باشه و آرایه به ترتیب ستونی ذخیره شده باشه. آدرس شروع درایه A[15][9][3] چیست؟ (همه اعداد در مبنای 10 می باشند.)

int A[10..25][6..15][1..6]

چرا و چه موقع انتقال اندیس انجام میشه؟
(24 مهر 1393 10:47 ب.ظ)Ametrine نوشته شده توسط: [ -> ]توی این سوال چرا انتقال اندیس انجام میشه؟

آی تی ۸۴: اگر آدرس شروع آرایه A در حافظه ۱۰۰ باشه و ۴ بایت برای هر متغیر int نیاز باشه و آرایه به ترتیب ستونی ذخیره شده باشه. آدرس شروع درایه A[15][9][3] چیست؟ (همه اعداد در مبنای ۱۰ می باشند.)

چرا و چه موقع انتقال اندیس انجام میشه؟

سلام.ببینم اندازه هر بعد رو نداریم؟؟؟ یعنی معلوم نیست اندازه کلی هر بعد ارایه چنده؟
(25 مهر 1393 12:02 ق.ظ)miladcr7 نوشته شده توسط: [ -> ]سلام.ببینم اندازه هر بعد رو نداریم؟؟؟ یعنی معلوم نیست اندازه کلی هر بعد ارایه چنده؟

(07 آبان 1393 09:29 ق.ظ)Aurora نوشته شده توسط: [ -> ]باید ابعاد ارایه مشخص باشه تا انتقال انجام بشه.

ابعاد آرایه رو پیدا کردم.
لطفاً حالا انتقال اندیس رو توضیح بدید.
لطفاً یه نفر اینو توضیح بده.
دوستان تو وقت های مرده و غیرفعالتونم یعنی نمیشه یه نگاه به اینجا بندازید؟ Big Grin
سلام. عنصر [tex]A(15)(9)(3)[/tex] از آرایه [tex]A(10..15)(6..15)(1..6)[/tex] نیازه. عنصر [tex]A(10)(6)(1)[/tex] به خونه اول آرایه اشاره داره.

عدد ۳ میگه ۲ واحد از نوع int، عدد ۹ میگه ۳ واحد از نوع آرایه بطول ۶ از نوع int و عدد ۱۵ میگه ۵ واخد از نوع آرایه دو بعدی به اندازه ۶×۱۰ از نوع int باید جلو بریم. پس مقداری که باید جلو بریم میشه [tex]4(2 3*6 5*6*10)=1280[/tex] پس آدرس شروع میشه این مقدار بعلاوه آدرس اولین خونه یعنی میشه ۱۳۸۰
ستونی
۱۴۹۲=[(۱۵-۱۰)+(۱+۲۵-۱۰)*(۹-۶)+(۲۵-۱۰+۱)*(۱۵-۶+۱)*(۳-۱)]*۴
(14 آبان 1393 03:38 ب.ظ)Jooybari نوشته شده توسط: [ -> ]سلام. عنصر [tex]A(15)(9)(3)[/tex] از آرایه [tex]A(10..15)(6..15)(1..6)[/tex] نیازه. عنصر [tex]A(10)(6)(1)[/tex] به خونه اول آرایه اشاره داره.

عدد ۳ میگه ۲ واحد از نوع int، عدد ۹ میگه ۳ واحد از نوع آرایه بطول ۶ از نوع int و عدد ۱۵ میگه ۵ واخد از نوع آرایه دو بعدی به اندازه ۶×۱۰ از نوع int باید جلو بریم. پس مقداری که باید جلو بریم میشه [tex]4(2 3*6 5*6*10)=1280[/tex] پس آدرس شروع میشه این مقدار بعلاوه آدرس اولین خونه یعنی میشه ۱۳۸۰
من متوجه نشدم!
میشه واضح تر توضیح بدید؟
(15 آبان 1393 07:23 ب.ظ)Ametrine نوشته شده توسط: [ -> ]من متوجه نشدم!
میشه واضح تر توضیح بدید؟

جوابم احتمالاً مشکل داره. من برای حالت سطری نوشتم. به کلمه ستونی توجه نکرده بودم. در حالت سطری برای آرایه سه بعدی، هر واحد تفاوت در اندیس سمت راست با اولین مقدار اندیس معادل یک واحد حافظست. هر واحد اختلاف در دومین اندیس معادل اندازه یک سطر از آرایست. یعنی طول بعد اول آرایه. برای اندیس سوم هم هر واحد اختلاف معادل یک صفحه میشه به اندازه ضرب اندازه اندیس اول در دوم.
برای حالت ستونی فکر کنم ترتیبش از چپ به راست باشه.
(15 آبان 1393 12:36 ق.ظ)Aurora نوشته شده توسط: [ -> ]ستونی
۱۴۹۲=[(۱۵-۱۰)+(۱+۲۵-۱۰)*(۹-۶)+(۲۵-۱۰+۱)*(۱۵-۶+۱)*(۳-۱)]*۴
بعلاوه‌ی 100 هم کنید، جواب درست میشه.
1592
لینک مرجع