یوشا آل ایوب

وبگاه دست نوشته ها و تجربیات شخصی

یوشا آل ایوب

وبگاه دست نوشته ها و تجربیات شخصی

یوشا آل ایوب

دکتر مصطفی چمران: می گویند تقوا از تخصص لازمتر است، آنرا می پذیرم، اما می گویم: آنکس که تخصص ندارد و کاری را می پذیرد، بی تقواست!

تبلیغات
Blog.ir بلاگ، رسانه متخصصین و اهل قلم، استفاده آسان از امکانات وبلاگ نویسی حرفه‌ای، در محیطی نوین، امن و پایدار bayanbox.ir صندوق بیان - تجربه‌ای متفاوت در نشر و نگهداری فایل‌ها، ۳ گیگا بایت فضای پیشرفته رایگان Bayan.ir - بیان، پیشرو در فناوری‌های فضای مجازی ایران
بایگانی
  • انواع داده ها/Data types

داده ها(اطلاعات)ای که در برنامه استفاده می شوند، توسط نوع آنها طبقه بندی می شوند. نوع یک داده بیانگر مقادیر و دامنه آن داده می باشد. داده ها اندازه و انواع مختلفی دارند و هر نوع داده برای ذخیره شدن نیاز به مقدار حافظه متفاوتی دارد.

کلیه برنامه هایی که نوشته می شوند بر روی برخی از انواع داده ها عملیاتی انجام می دهند. پس برنامه برای پردازش داده باید نوع آنها را شناسایی کند.
در زبان C سه نوع داده اصلی(اساسی) وجود دارد: Integer, Float, Character (معادل فارسی: عدد صحیح، شناور/ممیزی/اعشاری و کاراکتری). هر کدام از این نوعها شامل گونه های زیادی(ریز تری) هستند که دامنه وسعی از مقادیر را در بر می گیرند.

داده اعداد صحیح/Integer:
بیشترین نوع داده ها، عدد صحیح یا Integer می باشد. این نوع شامل داده های 9, 8, 7 ,6 ,5 ,4 ,3 ,2 ,1 ,0 , -1, -2 ,-3 ,-4 ,-5 ,-6 ,-7 ,-8 ,-9 می باشد و با کلمات کلیدی(رزرو شده) int, unsigned int, short int, long, unsigned long مشخص می شوند. تفاوت اینها در دامنه مقداری و حافظه اِشغالی می باشد:
int دامنه مقدارش از -32768 تا 32767 بوده و به 2 بایت حافظه نیاز دارد. صحیح.
unsigned int دامنه مقدارش از 0 تا 65535 بوده و به 2 بایت حافظه نیاز دارد. صحیح بدون علامت.
short int دامنه مقدارش از -32768 تا 32767 بوده و به 2 بایت حافظه نیاز دارد. صحیح کوتاه.
long دامنه مقدارش از -2147483648 تا 2144483647 بوده و به 4 بایت حافظه نیاز دارد. بلند.
unsigned long دامنه مقدارش از 0 تا 4294967295 بوده و به 4 بایت حافظه نیاز دارد. بلند بدون علامت.
توجه داشته باشید که اعداد صحیح، قسمت شناور/ممیزی/اعشاری ندارند.

داده اعداد شناور/ممیزی/اعشاری/Float:
دومین نوع داده ها، شناور/ممیزی/اعشاری یا Float می باشند. این نوع شامل داده های 9, 8, 7 ,6 ,5 ,4 ,3 ,2 ,1 ,0 , -1, -2 ,-3 ,-4 ,-5 ,-6 ,-7 ,-8 ,-9 بهمراه نقطه، ممیز، کسر، توان و... می باشد و با کلمات کلیدی(رزرو شده) float, double, long double مشخص می شوند. تفاوت اینها هم در دامنه مقداری و حافظه اِشغالی می باشد:
float دامنه مقدارش از 3.4x10 بتوان -38 تا 3.4x10 بتوان 38 بوده و به 4 بایت حافظه نیاز دارد. شناور/ممیزی/اعشاری. تا 7 رقم دقت.
double دامنه مقدارش از 1.7x10 بتوان -308 تا 1.7x10 بتوان 308 بوده و به 8 بایت حافظه نیاز دارد. مضاعف. تا 15 رقم دقت.
long double دامنه مقدارش از 3.4x10 بتوان -4932 تا 3.4x10 بتوان 4932 بوده و به 10 بایت حافظه نیاز دارد. مضاعف بلند. تا 19 رقم دقت.
قسمت شناور/ممیزی/اعشاری و قدرمطلق دارند و به اعداد حقیقی معروفند(Real numbers).

داده کاراکتری/Char:
سومین نوع داده ها، کاراکتری یا Char می باشد. این نوع داده بیشتر از یک کاراکتر نمی تواند درخود نگه دارد(در حالت عادی). این نوع می تواند شامل همه داده ها(اعداد، حروف، عملگر، Symbol و..) باشد و با کلمه کلیدی(رزرو شده) char مشخص می شود. و 1 بایت هم از حافظه را اشغال می کند.

کامپیوتر، داده ها و اطلاعات رو بصورت باینری(0 و 1) در خود ذخیره می کند. پس بنابراین ذخیره سازی مستقیم یک حروف، کلمه یا علامت غیر ممکن می باشد. از این رو برای حل این مسله از یک مقدار عددی برای ذخیره داده ها استفاده می کند. یعنی نوع داده کاراکتری، باطناً یک مقدار عددی برابر با همان کاراکتر می باشد(مثل دکمه های صفحه کلید که هر کدام برای کامپیوتر یک عدد هستند).

کامپیوتر ها از کد ASCII برای نمایش داده های کاراکتری استفاده می کنند. ASCII یک کد استاندارد جهانی شناخته شده هست که 128 مقدار متفاوت را در بر دارد(و نمایش می دهد). در نوع داده کاراکتری از همین ASCII ها برای تبادل اطلاعات استفاده می شود.
وقتی داده ای رو در نوع کاراکتری ذخیره می کنید همیشه 1 بیت(با بایت اشتباه نگیرید) بصورت خودکار و مخفی خالی می ماند. و این 1 بیت خالی، + یا - بودن عدد(که برابر با همان کاراکتر هست) را نشان می دهد.

۹۱/۰۳/۳۰
یوشا آل ایوب

Data types

انواع داده

نظرات (۴)

mamnonam
۰۱ مرداد ۹۱ ، ۱۱:۱۶ محمد افاضاتی
اره می دونم چی میگی ولی حتی اگه توسعه هسته هم بگی این میشه یک قسمت از درختش
البته به نظرم داشتن چند تا فهرست کار بدی نیست.
فهرست C++
فهرست توسعه
و ...
۳۰ تیر ۹۱ ، ۲۱:۴۷ محمد افاضاتی
یه نگاهی به این بنداز
برنامه نویسی به زبان جاوا :: فهرست مطالب -> http://ayat.blog.ir/page/Index
خوبه که توهم یه index برای مطالب آموزشیت درست کنی
پاسخ:
مرسی، حرکتیست پر مغز!

ولی تمرکز اون فقط روی جاواست. من نمی تونم اینکارو کنم :(
جناب یوشا. یه پیشنهاد دارم: از این حرکت های اموزش بسیار انجام شده و معمولا مفاهیم اولیه را توضیح می دهند و بعد هم تمام. شما که زمان می گذارید, سعی کنید مطالبی را بگذارید که افراد نیاز بیشتری دارند و درعین حال به انها کمتر پرداخته شده است. به نظر من شما اموزش ها را روی شی گرایی بگذارید.
پاسخ:
مرسی از پیشنهاد

ولی این مقالات پایه ای برای هدف اصلیم، یعنی توسعه هسته لینوکس و تولید برنامه های User تحت لینوکس هستش.
سعی می کنم زود به مباحث پیشرفته برسونمش

تشکر.
کاربران بیان میتوانند بدون نیاز به تأیید، نظرات خود را ارسال کنند.
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">