اطلاعیه

Collapse
No announcement yet.

سوال در مورد تعریف رجیستر

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    سوال در مورد تعریف رجیستر

    درودیه مورد ساده 2 روزه پدر منو در آورده.متغیری FLOAT توی مین تعریف کردم و از طریق پورت سریال دیتا میگیرم و با یه فرمول تبدیلش میکنم و روی نمایشگر نمایش میده که توی حالت عادی -0.17 درست نمایش میدهحالا من این متغیر توی یک تابع جدید از صدا میزنم البته اونجا هم این متغیر از نوی EXTERN تعریف میکنم با همون اسم.حالا توی اگه من اون تابع صدا بزنم و رجیسترمو بخونم عددش فرق میکنه و میشه -0.98 ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟CLT+F زدم و توی کل پروژه دنبال این رجیستر گشتم . هیچ جای دیگه ای غیر از این دو قسمت نبود ؟؟؟

    #2
    پاسخ : سوال در مورد تعریف رجیستر

    سوال
    من توی مین برنامه فرض کنید که چند تا رجیستر تعریف میکنم مثلا

    float i;

    خوب حالا وقتی میخوام این رجیستر در توابع دیگه هم بشه استفاده کرد در اون توابع قبل تعریفش از extern استفاده میکنم

    extern float i;

    حالا دقیقا همین کارو با اون تابعی تعریف کردم که توی مین هست
    توی مین نوشتم

    void test(void){
    ........
    }

    و توی تابع دوم هم برای اینکه سراسری بشه یک بار فراخوانیش کردم با extern

    extern void test(void);


    این درسته یا جای دیگه ای هم باید تعریف بشه



    یک سوال دیگه . یک رشته به چه شکلی میشه سراسری تعریف کرد ؟؟ مثلا این


    const unsigned char ICONE_SETTING[128]=
    {
    0x00,0x00,0x00,0x00, // 0004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    0x00,0x0F,0xF0,0x00, // 0008 . . . . . . . . . . . . # # # # # # # # . . . . . . . . . . . .
    0x00,0x0F,0xF0,0x00, // 000C . . . . . . . . . . . . # # # # # # # # . . . . . . . . . . . .
    0x01,0x8C,0x31,0x80, // 0010 . . . . . . . # # . . . # # . . . . # # . . . # # . . . . . . .
    0x03,0xCC,0x33,0xC0, // 0014 . . . . . . # # # # . . # # . . . . # # . . # # # # . . . . . .
    0x07,0xFC,0x3F,0xE0, // 0018 . . . . . # # # # # # # # # . . . . # # # # # # # # # . . . . .
    0x0E,0x78,0x1E,0x70, // 001C . . . . # # # . . # # # # . . . . . . # # # # . . # # # . . . .
    0x1C,0x00,0x00,0x38, // 0020 . . . # # # . . . . . . . . . . . . . . . . . . . . # # # . . .
    0x1C,0x00,0x00,0x38, // 0024 . . . # # # . . . . . . . . . . . . . . . . . . . . # # # . . .
    0x0E,0x07,0xC0,0x70, // 0028 . . . . # # # . . . . . . # # # # # . . . . . . . # # # . . . .
    0x06,0x0F,0xF0,0x60, // 002C . . . . . # # . . . . . # # # # # # # # . . . . . # # . . . . .
    0x0E,0x1C,0x38,0x60, // 0030 . . . . # # # . . . . # # # . . . . # # # . . . . # # . . . . .
    0x7C,0x38,0x1C,0x3E, // 0034 . # # # # # . . . . # # # . . . . . . # # # . . . . # # # # # .
    0xFC,0x70,0x0C,0x3E, // 0038 # # # # # # . . . # # # . . . . . . . . # # . . . . # # # # # .
    0xE0,0x60,0x06,0x06, // 003C # # # . . . . . . # # . . . . . . . . . . # # . . . . . . # # .
    0xE0,0x60,0x06,0x06, // 0040 # # # . . . . . . # # . . . . . . . . . . # # . . . . . . # # .
    0xE0,0x60,0x06,0x06, // 0044 # # # . . . . . . # # . . . . . . . . . . # # . . . . . . # # .
    0xE0,0x60,0x06,0x06, // 0048 # # # . . . . . . # # . . . . . . . . . . # # . . . . . . # # .
    0xFC,0x70,0x0E,0x3E, // 004C # # # # # # . . . # # # . . . . . . . . # # # . . . # # # # # .
    0x7C,0x30,0x1C,0x3E, // 0050 . # # # # # . . . . # # . . . . . . . # # # . . . . # # # # # .
    0x0E,0x3C,0x38,0x70, // 0054 . . . . # # # . . . # # # # . . . . # # # . . . . # # # . . . .
    0x06,0x1F,0xF0,0x60, // 0058 . . . . . # # . . . . # # # # # # # # # . . . . . # # . . . . .
    0x0E,0x07,0xE0,0x70, // 005C . . . . # # # . . . . . . # # # # # # . . . . . . # # # . . . .
    0x1C,0x00,0x00,0x38, // 0060 . . . # # # . . . . . . . . . . . . . . . . . . . . # # # . . .
    0x1C,0x00,0x00,0x38, // 0064 . . . # # # . . . . . . . . . . . . . . . . . . . . # # # . . .
    0x1E,0x60,0x0E,0x70, // 0068 . . . # # # # . . # # . . . . . . . . . # # # . . # # # . . . .
    0x0F,0xFC,0x3F,0xE0, // 006C . . . . # # # # # # # # # # . . . . # # # # # # # # # . . . . .
    0x07,0xDC,0x3B,0xC0, // 0070 . . . . . # # # # # . # # # . . . . # # # . # # # # . . . . . .
    0x03,0x8C,0x31,0x80, // 0074 . . . . . . # # # . . . # # . . . . # # . . . # # . . . . . . .
    0x00,0x0F,0xF0,0x00, // 0078 . . . . . . . . . . . . # # # # # # # # . . . . . . . . . . . .
    0x00,0x0F,0xF0,0x00, // 007C . . . . . . . . . . . . # # # # # # # # . . . . . . . . . . . .
    0x00,0x00,0x00,0x00 // 0080 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    };

    جدیدترین ویرایش توسط sepehr63; ۰۹:۲۹ ۱۳۹۶/۰۵/۱۹.

    دیدگاه

    لطفا صبر کنید...
    X