The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
الأنواع التي تحتوي على أعداد صحيحة: char، short، int، long، long long
دعونا نلقي نظرة على بعض الأمثلة:
شار كفار = 50؛
شار كفار = 50؛
سفار قصير = 50؛
إنت إيفار = 50؛
lvar1 طويلة = 50؛
lvar2 طويلة = 50؛
العوامل الحسابية الأساسية:
معظمهم على دراية بالعوامل الحسابية الأساسية وترتيب الأسبقية: +، -، *، /
فيما يلي بعض الأمثلة حول كيفية استخدام العامل الأحادي: ++ و--:
| تعبير | ما يعادل | مكافئ أيضًا لـ |
|---|---|---|
| cvar += 5; | cvar = cvar + 5; | |
| ++cvar; | cvar++; | cvar = cvar + 1; |
| --cvar; | cvar--; | cvar = cvar - 1; |
احذر من المتغير ++ مقابل المتغير ++!
++متغير
int x = 10, y = 20;
X = ++y;
ملحوظة: بعد هذه العملية: X = 21، وY أيضًا = 21.
متغير++
int x = 10, y = 20;
X = y++;
ملاحظة: بعد هذه العملية: X = 20، و Y = 21.
مقارنة نوع البيانات الصحيحة
هناك مجموعة أو نوع بيانات يسمح بالقيمة الإيجابية والسلبية - "موقعة". ومع ذلك، لا تحتاج إلى تحديد ذلك لأنه ضمني. انظر أدناه:
| نوع البيانات | أصغر قيمة | أكبر قيمة |
|---|---|---|
| شخصية | -2 7 أو -128 | 2 7 - 1 أو 127 |
| قصير | -2 15 أو -32,768 | 2 15 - 1 أو 32,767 |
| عدد صحيح | -2 31 أو -2,147,483,648 | 2 31 – 1 أو 2,147,483,647 |
| طويل | -2 31 أو -2,147,483,648 | 2 31 – 1 أو 2,147,483,647 |
| طويلاً جداً | -2 63 أو -9,223,372,036,854,775,808 | 2 63 – 1 أو 9,223,372,036,854,775,807 |
هناك مجموعة أو نوع بيانات يسمح فقط بالقيمة الإيجابية - "غير موقعة".
| نوع البيانات | أصغر قيمة | أكبر قيمة |
|---|---|---|
| حرف غير موقع | 0 | 2 8 - 1 أو 255 |
| قصير غير موقع | 0 | أو |
| عدد صحيح غير موقع | 0 | 2 32 – 1 أو 4,294,967,295 |
| طويل غير موقع | 0 | 2 32 – 1 أو 4,294,967,295 |
| غير موقعة لفترة طويلة | 0 | 2 64 – 1 أو 18,446,744,073,709,551,615 |
كيف يتم التحقق من حجم البيانات؟
في الوقت الحالي، يجب أن تعرف حجم عامل التشغيل ( ). يوفر هذا وحدة تخزين الذاكرة تسمى "البايتات"، والتي سيتم تناولها قليلاً في القسم التالي.
نموذج لإخبارك بعدد البايتات الذي يجب كتابته باستخدام عامل التشغيل sizeof(). جرب هذا للتحقق منها بنفسك. إذا قمت بالتغيير إلى وحدة تحكم أخرى، فيمكنك دائمًا القيام بما يلي للتحقق.
Brain.Screen.setFont(fontType::mono30);
Brain.Screen.printAt(1, 20,"char has %d bytes", sizeof(char));
Brain.Screen.printAt(1, 50,"short has %d bytes", sizeof(short));
Brain.Screen.printAt(1, 80,"int has %d bytes", sizeof(int));
Brain.Screen.printAt(1, 110, "long has %d bytes", sizeof(long));
Brain.Screen.printAt(1, 140, "long long has %d bytes", sizeof(long long));
Brain.Screen.printAt(1, 170, "float has %d bytes", sizeof(float));
Brain.Screen.printAt(1, 200, "double has %d bytes", sizeof(double));
النص المطبوع على شاشة V5 Brain:
char له بايت واحد
short له بايتان
int له 4 بايتات
long له 4 بايتات
، long long له 8 بايتات
، float له 4 بايتات
double له 8 بايتاتماذا يعني البايت؟
"البايت" هي وحدة قياسية لتخزين البيانات.
بايت واحد = 8 بت. البت الواحد هو أصغر وحدة ذاكرة يمكن أن تحتوي فقط على قيمة 1 و0 (قيمة ثنائية). لكن أصغر وحدة ذاكرة يمكنك الحصول عليها من النظام هي 1 بايت؛ لذلك لا يمكنك طلب 1.5 بايت، وما إلى ذلك.
دعونا نلقي نظرة على شار. إنها قصيرة بما يكفي لعرضها بسهولة.
إذا كان كل شيء مليئًا بالـ 1، فستحصل على 28-1. يجب أن تكون هذه القيمة هي الحد الأقصى لقيمة "الحرف غير الموقع" الذي يجب أن يحمله.
يحتفظ النظام بالبت الأعلى ترتيبًا من أجل إعطاء قيمة سالبة. وبالتالي، تتراوح القيمة القصوى لـ "char" من -128 إلى 127. ومع ذلك، فإن السعة لا تزال هي نفسها مثل "unsigned char" على الرغم من الاختلاف في نطاق البيانات.
في الكمبيوتر، يتم استخدام عملية تسمى "المكمل الثنائي". يعد هذا جزءًا من المواضيع ضمن عملية Bitwise، وهو خارج نطاق هذه الوثيقة. سيتم مناقشة المزيد حول هذا الموضوع في وثيقة أخرى.
ما هو الفرق بين char و int؟
فيما يلي بعض الاستخدامات الشائعة لـ "char" و"int":
char var1 = '9';
int var2 = 9;
من المفاهيم الخاطئة الشائعة أن "char" يمكن أن يحتوي فقط على رموز مثل "a" أو "b" أو "9". هذا غير صحيح.
في الواقع، النوع "char" هو نفس النوع "int"، باستثناء أن سعة char تبلغ 1 بايت فقط، وسعة int هي 4 بايت. وبالتالي، فإن نطاق حجم البيانات يختلف بين الاثنين. يمكنك أن ترى ذلك في جدول نطاق البيانات أعلاه.
ستمنحك مقاطع التعليمات البرمجية التالية رؤية أوضح لـ char وint.
int iX = '0';
char cX1 = 49;
char cX2 = 50;
Brain.Screen.printAt(3, 20, "التمثيل العددي للعدد '%c' = %d",iX, iX);
Brain.Screen.printAt(3, 50, "التمثيل العددي للعدد '%c' = %d",cX1, cX1);
Brain.Screen.printAt(3, 80, "التمثيل العددي للعدد '%c' = %d",cX2, cX2);
Brain.Screen.printAt(3, 140, "إذن '%c' - '%c' = %d ", cX2, iX, cX2 - cX1);
انتاج:
التمثيل العددي للرقم '0' هو 48
والتمثيل العددي للرقم '1' هو 49
والتمثيل العددي للرقم '2' هو 50
إذن '2' - '0' = 1
قد تتساءل: لماذا الرقم "0" يظهر 48؟
سيؤدي هذا إلى تحويل المواضيع المسماة "رمز ASCII". يعد معيار ASCII أحد أهم إنجازات IEEE التي تم نشرها في عام 1963. وهذا خارج نطاق هذه المقالة. ننصحك بالبحث عن جدول رموز ASCII عبر الإنترنت. ستجد عددًا كبيرًا من المعلومات عبر الإنترنت حول جدول رموز ASCII.