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





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









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









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





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

نمایش نتایج: از 1 به 3 از 3
  1. #1
    2011/08/05
    کرج - مارليک
    288
    19

    چگونه به بیت های یک متغیر دسترسی داشته باشیم.!

    سلام به همه
    من قبلا برای اینکه بتونم بیت های یک متعیر رو بخونم و روی شیفت رجیستر ارسال کنم به ترتیب زیر عمل میکردم
    کد:
    bufer=0x55;
    for(m=0x80;m>=01;m=m>>1){ 
      PORTA.0=Bufer&m; 
      };

    حالا میخوام با برسی یک شرط بیت های متغیر رو مشخص کنم -> ( یعنی بیت به بیت یک متغیر رو تغیر بدم ) یجورایی تبدیل هشت بایت به هشت بیته که من اینجوری نوشتم که کدویژن ارور میده و میدونم هم که غلطه
    کد:
    // char _bufer[8];
    // char final_bufer;
    x=0; 
     for(j=0x01;j<=0x80;j=j<<1){
      
      if(_bufer[x]>128){
      final_bufer&j=1;}
      else{ 
      final_bufer[z]&j=0;}  
     x++; 
      };
    دوستان لطفا راهنمایی کنید . شدیدا به این تبدیل نیاز دارم و وقتمم خیلی کمه :sad: :sad: :sad: :sad:
    قومي متفکرند اندر ره دين
    قومي بگمان فتاده در راه يقين
    ميترسم از آن که بانگ آيد روزي
    که اي بي خبران ، راه نه آن است و نه اين...!
  2. #2
    2008/08/02
    تهران
    1,292
    12

    پاسخ : چگونه به بیت های یک متغیر دسترسی داشته باشیم.!

    اگه میخواین بیت پنج رو تغییر بدین باید با 5>>1 or یا با نقیض اون and کنید.
    امیدوارم منظورتون رو درست فهمیده باشم
    گفت که دیوانه نهی لایق این خانه نهی
  3. #3
    2011/08/05
    کرج - مارليک
    288
    19

    پاسخ : چگونه به بیت های یک متغیر دسترسی داشته باشیم.!

    نقل قول نوشته اصلی توسط Finder_
    اگه میخواین بیت پنج رو تغییر بدین باید با 5>>1 or یا با نقیض اون and کنید.
    امیدوارم منظورتون رو درست فهمیده باشم
    ممنون ، این روش که شما فرمودید درسته . در تنظیم رجیسترهای کنترلرهای آرم معمولا اینجوری عمل میکنن. .اصلا به دهنم نرسیده بود. :mrgreen:

    من مشکل رو اینجوری حل کردم
    کد:
    //*******************************************
    void convert(char _bufer[120]){
    byte i,j,x=0,z=0;
    //---------------------------
    // clear final bufer
     for(i=0;i<=23;i++)
     final_bufer[i]=0x00;
    //--------------------------- 
     for(i=0;i<=119;i+=5){ 
     for(j=0x01;j<=0x10;j=j<<1){ 
      if(_bufer[x]>128)
      final_bufer[z]=final_bufer[z]|j;
      x++;
      };  
     z++; 
     };
    };
    تبدیل بصورت 120 بایت که باید به 24 بایت تبدیل بشه - یعنی 120 تا پیکسل هستش که هرکدوم مقداری بین 0 تا 255 رو میتونه داشته باشه
    حالا من میخواستم تبدیلش کنم به 24 بایت 5 بیتی که در نهایت یه همون 120 با مقدار 0 و یک میرسیم
    اول آرایه 24 بایتی رو کلا صفر میکنم و بعد با برسی شرط بیت ها رو یک میکنم
    یه مقدار بد نوشتم - ولی تو زمان کم بهتر از این نمیشد
    قومي متفکرند اندر ره دين
    قومي بگمان فتاده در راه يقين
    ميترسم از آن که بانگ آيد روزي
    که اي بي خبران ، راه نه آن است و نه اين...!
نمایش نتایج: از 1 به 3 از 3

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

  1. پاسخ: 13
    آخرين نوشته: 2015/05/28, 11:31
  2. چگونه یک نوشته تک خطی داشته باشیم
    توسط ahmadkarim در انجمن تابلو ثابت LED
    پاسخ: 0
    آخرين نوشته: 2015/05/06, 22:40
  3. پاسخ: 7
    آخرين نوشته: 2014/07/15, 16:42
  4. چگونه اپلود کنیم تا راحت باشیم
    توسط alielec در انجمن گفتگو درباره ECA
    پاسخ: 1
    آخرين نوشته: 2013/06/13, 07:21
  5. چقدر کافی هست یاد داشته باشیم
    توسط astalavista در انجمن برنامه نويسي و اينترفيس
    پاسخ: 3
    آخرين نوشته: 2008/02/08, 19:51

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

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

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

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

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