ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 8 از 8
  1. #1
    2009/09/25
    اصفهان
    814
    45

    معادل متغيير overlay تو زبان C

    سلام
    توي کامپايلر بيسيک يه نوع متغيير هست به نام overlay
    که به نظر من خيلي عالي هست
    شما مثلا يه آرايه 20 بايتي داري که توش 5 تا متغيير 32 بيتي ذخيره شده
    حالا اگر عدد 32 بيتي مثلا سوم رو بخواهي
    يه آرايه 32 بيتي با طول 5 تعريف ميکني بصورت overlay که آدرس شروعش ،آدرس شروع اون آرايه 20 بايتي هست و حالا براي بدست اوردن متغير سوم ارايه سوم رو مي خوني
    اينکار نياز به تبديل و... حين اجراي برنامه از بين ميبره و زمان کامپايل ،کامپايلر آدرس دهي ميکنه
    حالا سوال من اينه که معادل روش تو زبان C چي هست؟
    توضيحات رو دادم که اگر کسي بيسيک رو آشنايي نداره و سي رو بلد هست در جريان قرار بگيره
    ممنون
    هميشه به ياد خدا باش !
  2. #2
    2007/06/28
    721
    15

    پاسخ : معادل متغيير overlay تو زبان C

    مغييرهايي که در زبان سي از نوع POINTER يا اشاره گر تعريف ميشن براي انجام اينکار و همچنين انواع انتقال داده از طريق آدرس دهي استفاده ميشوند.
    همچنين در زبان اسمبلي از طريق آدرس دهي غير مستقيم انجام ميشود
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید
  3. #3
    2009/09/25
    اصفهان
    814
    45

    پاسخ : معادل متغيير overlay تو زبان C

    يه مثال از پوينتر مثل توضيحي که دادم ميشه لطف کني بگي به چه صورت متغيير رو تعريف ميکنيد؟
    مثال تعريف متغيير پست اول
    ممنون
    هميشه به ياد خدا باش !
  4. #4
    2007/06/28
    721
    15

    پاسخ : معادل متغيير overlay تو زبان C

    يکي از مواردي که باعث شده دسترسي به سخت افزار در زبان C بيشتر بشه همين اشاره گر ها هستند و در واقع هرجا صحبت از بان C هست از اشاره گرها به عنوان يک نقطه قوت در اين زبان ياد ميکنند. علاوه بر موردي که شما اشاره کرديد اين نوع متغيير در زبان C کاربردهاي فراوان ديگري هم دارد.
    براي تعريف يک متغيير از نوع اشاره گر اول نوع متغيير رو مشخص ميکنيم ( اينکه چند بيتي هست، مثلا int هست يا long يا char و ... ) بعد قبل از نام متغيير علامت '*' را قرار ميدهيم، به عنوان ساده ترين مثال ميشه مثال زير رو در نظر گرفت
    کد:
    int 	*p,m,s;
    m = 5;
    p = &m;
    s = *p;
    در مثال بالا متغيير P از نوع اشاره گر هست و متغييرهاي ديگر متغيير معمولي هستند، اگرچه در زبان C ميتوان موقع تعريف متغيير آدرس هم به آن اختصاص داد مثلا کامپايلر را وادار کنيد متغيير m را در آدرس خاصي ذخير کند، اما در اين مثال فرض شده ما متغيير را به فرم کلي در نظر گرفتيم و آدرس آن را نميدانيم.
    خوب در خط اول که 3 متغيير تعريف شده که p از نوع اشاره گر هست. در خط بعد مقدار 5 در m قرار گرفته و در خط سوم آدرس متغيير m در p قرار گرفته، يعني الان ديگه ما ميدانيم متغيير m در چه خانه اي از حافظه ذخيره شده ( خانه اي که متغيير p حاوي آدرس آن است و ميتواند به آن اشاره کند ) در خط چهارم محتويات آدرسي که P به آن اشاره ميکند در متغيير s قرار ميگيرد. اين مثال براي درک چگونگي استفاده از اشاره گر هست اما کاربردهاي وسيع آن را نشان نميدهد، به عنوان مثال شما با داشتن متغيير p ميتوانيد خود m را به طور غير مستقيم تغيير دهيد يا چند خانه قبل و بعد آنرا هم به همين صورت، يا اگر m از نوع 32 بيتي يا حتي آرايه و رشته باشد باز هم از اين طريق ميتوان قسمتي از آن را تغيير داد يا قبل و بعد از آن مقادير را ويرايش کرد.
    مثالي که براتون نوشتم يک مثال ساده و معروف هست که از کتاب برنامه نويسي زبان C مهندس جعفرنژاد قمي انتخاب کردم. و براي اطلاعات بيشتر ميتونيد فصل 6 همين کتاب را مطالعه کنيد ( البته در اينترنت هم مثال ها و توضيحات خوبي هست ) از متغييرهاي اشاره گر در زبان C استفاده ها گوناگوني ميشه که در کارکرد توابع و آرايه ها و رشته ها خيلي کاربرد دارد و ارسال آرگومان ها از طريق فراخواني يا ارجاع را امکان پذير مي کند.
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید
  5. #5
    2009/09/25
    اصفهان
    814
    45

    پاسخ : معادل متغيير overlay تو زبان C

    برادر study وقت گذاشتي و جواب دادي ، دمت گرم.
    با پوينترها تا حدودي کار کردم،البته به وفور تو بيسيک و اسمبلي
    با سي خيلي کم،اولين تجربه من تو اين زمينه ميکروي st و کيل بود
    مشکل من اينه که زياد از help کيل هنوز سر درنياوردم،من اکثرا موارد مورد نظرم رو از طريق help و با خود کامپايلر يا سخت افزار ياد ميگيرم،تو اينترنت چرخي زدم و مثالهايي از اين مورد ديدم،اما اين استفاده اي که من تو پست اول ذکر کردم،رو چيزي در موردش نديدم،حالا يا اينکار کار خنده داري هست و کسي انجام نمي ده ، يا روش راحت تري هست براي استفاده از پوينتر و من بلد نيستم،اما من با اين روش و بسکام و البته اسمبلي برنامه هايي نوشتم براي avr با قابليتهاي کم اون نسبت به arm که الان که با st مي نويسم به نظرم به اون خوبي نتونستم هنوز راه بيوفتم
    توضيح و مثال شما خوب بود
    مشکل من دقيقا خط دوم مثالت هست p=
    نمي خوام حين اجراي برنامه با يه دستور آدرس متغيير رو بدست بيارم و بعد داخلش مقدار بريزم
    ميخوام مثلا
    Int var1
    U8 bufx[100]
    Var1 هميشه يه متغيير int باشه که آدرش بايت 3 تا 7 اون بردار باشه
    و اين محاسبات زمان کامپايل اعمال بشه و نه در حين اجراي برنامه
    شايدم بهتره بقول شما اول برم سي بخونم،خنده داره من براي آرم اسمبلي نوشتم اما هنوز سي بلد نيستم
    به هر صورت دستت درد نکنه
    موفق باشي
    هميشه به ياد خدا باش !
  6. #6
    2007/06/28
    721
    15

    پاسخ : معادل متغيير overlay تو زبان C

    خواهش مي کنم قربان
    شايد من درست متوجه منظور شما نشدم، در زبان سي هم ميشه در همون ابتدا همزمان با تعريف متغير آدرس متغيير رو تعريف کرد، هر بلاي ديگه هم اگر بخوايد بعد تو برنامه ميشه هم سر خودش هم آدرسش آورد به شرطي که به طور کلي به ساختار اصلي سي مسلط باشيد و بدونيد چطور از قابليت هاش استفاده کنيد. همين که با اسمبلي کد نوشتيد خيلي عالي هست چراکه برنامه نويسي اسمبلي براي هر ميکروکنترلر يا پردازشگر نيازمند آشنايي با معماري و درک مناسب از سيستم هست و اگر موفق شديد اينکار رو بکنيد تنها گير شما در زبان سي يک مطالعه کلي در مورد خود زبان سي و قابليت هاش هست که با توجه به تجربه برنامه نويسي قيلي شما زمان چنداني هم نميگيره. يکسري کتاب ها و pdf ها هستند که آموزش c هستند اما با ديد ميکروکنترلري ياد دادند نه ديد کامپيوتري، به همين خاطر قسمتهايي که به کنترل سخت افزاري مربوط ميشه و کاربرد داره رو با جزئيات بيشتري توضيح دادند و مثال زدند اگر سي رو براي استفاده ميکروکنترلري ميخوايد فکر ميکنم مطالعه اونا مفيدتر از کتابهايي مثل کتاب آقاي جعفرنژاد قمي باشه که بيشتر جنبه آموزش دانشگاهي و نرم افزاري داره.
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید
  7. #7
    2009/09/25
    اصفهان
    814
    45

    پاسخ : معادل متغيير overlay تو زبان C

    دقيقا C رو براي ميکرو لازم دارم
    لينک مناسبي سراغ داريد معرفي کنيد؟
    هميشه به ياد خدا باش !
  8. #8
    2007/06/28
    721
    15

    پاسخ : معادل متغيير overlay تو زبان C

    در حال حاضر لينک خاصي تو ذهنم نيست اما بگرديد حتما PDF پيدا ميکنيد، خودم يک کتاب PDF شده خوب در اين زمينه داشتم متاسفانه هرچي بين کتابام گشتم براتون UPLOAD کنم پيداش نکردم ببخشيد! اگر احيانا چيز خاصي پيدا کردم چشم
    از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
    هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
    اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
    اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
    شاد و موفق باشید
نمایش نتایج: از 1 به 8 از 8

موضوعات مشابه

  1. video overlay
    توسط negin-bahadori در انجمن پردازش تصوير
    پاسخ: 0
    آخرين نوشته: 2016/01/27, 14:48
  2. معادل فرمان پیک بیسیک در زبان C
    توسط A.SAMIEE در انجمن میکروکنترلرهای PIC
    پاسخ: 1
    آخرين نوشته: 2015/11/27, 11:57
  3. پاسخ: 4
    آخرين نوشته: 2014/06/16, 10:51
  4. معادل دستور INSTR در زبان C (جست و جو در آرايه)
    توسط homayon در انجمن میکروکنترلرهای AVR
    پاسخ: 3
    آخرين نوشته: 2014/06/09, 19:15
  5. پاسخ: 6
    آخرين نوشته: 2013/07/02, 10:34

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •