المحاضرة رقم ٦ من دورة اردوينو من الصفر حتى الاحتراف

انواع البيانات

تشير أنواع البيانات في C إلى نظام شامل يستخدم للإعلان عن المتغيرات أو الوظائف من أنواع مختلفة. يحدد نوع المتغير و مقدار المساحة التي يشغلها في التخزين وكيف يتم تفسير نمط البت المخزن.

يوفر الجدول التالي جميع أنواع البيانات التي ستستخدمها أثناء برمجة Arduino.

Void

يتم استخدام الكلمة الأساسية void فقط في تعريفات الدالة. يشير إلى أنه من المتوقع أن تقوم الدالة بإرجاع أية معلومات إلى الوظيفة التي تم استدعاؤها منها.

مثال

Boolean

يحتوي Boolean على واحدة من قيمتين ، صواب أو خطأ اي حالة منطقية صفر أو واحد. يحتل كل متغير Boolean بايت واحد من الذاكرة.

مثال

Char

نوع بيانات يأخذ بايت واحد من الذاكرة يقوم بتخزين قيمة حروف. تتم كتابة الأحرف الحرفية حرف في علامات اقتباس مفردة مثل : ‘A’ و عند كتابة أحرف متعددة ، تستخدم السلاسل علامات الاقتباس المزدوجة: “ABC”.

ومع ذلك ، يتم تخزين الأحرف كأرقام. يمكنك رؤية الترميز المحدد في جدول ASCII دناه. هذا يعني أنه من الممكن القيام بعمليات حسابية على الأحرف ، حيث يتم استخدام قيمة ASCII للحرف. على سبيل المثال ، إن ،
A ‘+ 1 ‘
تساوي 66 ، حيث أن قيمة ASCII للحرف A تبلغ 65.

مثال

unsigned char

هو نوع بيانات تحتل بايت واحد من الذاكرة. يشفر نوع البيانات ك أرقام من 0 إلى 255.

مثال

byte

هو مثل unsigned char لكنه يخزن البيانات ب 8 بت في الذاكرة.

مثال

byte m = 25 ;

int

الأعداد الصحيحة هي نوع البيانات الأساسية لتخزين الأرقام. يخزن int قيمة 16 بت (2 بايت). هذا ينتج نطاق -32،768 إلى 32،767 (قيمة الحد الأدنى من -2 ^ 15 وقيمة قصوى (2 ^ 15) – 1).

حجم int يختلف من لوحة الى اخرى. على Arduino Due ، على سبيل المثال ، يخزن int قيمة 32 بت (4 بايت). ينتج هذا نطاق من -2،147،483،648 إلى 2،147،483،647 (الحد الأدنى للقيمة -2 ^ 31 وقيمة قصوى (2 ^ 31) – 1).

مثال

int counter = 32 ;

Unsigned int

هي نفسها int في طريقة تخزينها لقيمة 2 بايت. ولكن بدلاً من تخزين الأرقام السالبة ، فإنها تخزن فقط القيم الموجبة ، مما يعطي نطاقًا مفيدًا من 0 إلى 65،535 (2 ^ 16) – 1). لوحة Due تاخذ قيمة 4 بايت (32 بت) تتراوح من 0 إلى 4،294،967،295 (2 ^ 32 – 1).

مثال

Unsigned int counter = 60 ;

Word

على لوحات Uno و ATMEGA الأخرى ، تقوم كلمة بتخزين رقم من 16 بت. على Due و Zero ، بتخزين رقم من 32 بت.

مثال

word w = 1000 ;

Long

الأرقام long لتخزين الأرقام الكبيرة، وتخزين 32 بت (4 بايت) ، من 2،147،483،648 إلى 2،147،483،647.

مثال

Long velocity = 102346 ;

unsigned long

نفس long لكنها لن تخزن الأرقام السالبة ، مما يجعل نطاقها من 0 إلى 4،294،967،295 (2 ^ 32 – 1).

مثال

Unsigned Long velocity = 101006 ;

short

هو نوع بيانات 16 بت. على كافة Arduinos (ATMega و ARM) ، يخزن قيمة 16 بت (2 بايت). هذا ينتج نطاق -32،768 إلى 32،767 (قيمة الحد الأدنى من -2 ^ 15 وقيمة قصوى (2 ^ 15) – 1).

مثال

short val = 13 ;

float

هذه الارقم لديها الفاصلة العشرية. غالبًا ما تُستخدم أرقام الفاصلة العشرية لتقدير القيم التمثيلية والمستمرة لأن لها دقة أكبر من الأعداد الصحيحة.

يمكن أن تكون أرقام الفاصلة العشرية كبيرة بحجم 3.4028235E + 38 ، وبأقل من 3.4028235E + 38. يتم تخزينها كـ 32 بت (4 بايت) من المعلومات.

مثال

float num = 1.352;

double

على لوحات Uno و ATMEGA الأخرى ، يحتل الدقة المزدوجة أربعة وحدات بايت. وهذا يعني أن double هو نفسه تمامًا مثل float ، بدون اختلاف في الدقة. على Arduino Due ، تحتوي الدُبل المزدوجة على دقة 8 بايت (64 بت).

مثال

double num = 45.352 ;

أضف تعليق