التوقيع
في الحوسبة، الإشارة هي خاصية لأنواع البيانات التي تمثل الأرقام في برامج الكمبيوتر. يكون المتغير الرقمي موقّعًا إذا كان بإمكانه تمثيل الأرقام الموجبة والسلبية ، وغير موقّع إذا كان بإمكانه تمثيل الأرقام غير السالبة فقط (الصفر أو الأرقام الموجبة).
نظرًا لأن الأرقام الموقعة يمكن أن تمثل أرقامًا سلبية، فإنها تفقد نطاقًا من الأرقام الموجبة التي لا يمكن تمثيلها إلا بأرقام غير موقعة بنفس الحجم (بالبتات) لأن نصف القيم الممكنة تقريبًا هي قيم غير موجبة، في حين أن النوع غير الموقع المقابل يمكن أن يخصص جميع القيم الممكنة لنطاق الأرقام الموجبة.
على سبيل المثال، يمكن لعدد صحيح موقّع مكون من 16 بتًا ومكمّل لاثنين أن يحمل القيم من −32768 إلى 32767 بشكل شامل، بينما يمكن لعدد صحيح غير موقّع مكون من 16 بتًا أن يحمل القيم من 0 إلى 65535. بالنسبة لطريقة تمثيل الإشارة هذه ، يشير البت الموجود في أقصى اليسار ( البت الأكثر أهمية ) إلى ما إذا كانت القيمة سالبة (0 للإيجاب أو الصفر، 1 للسالب).
في لغات البرمجة
بالنسبة لمعظم البنيات، لا يوجد تمييز بين النوع الموقّع وغير الموقّع في لغة الآلة . ومع ذلك، عادةً ما تحدد التعليمات الحسابية علامات وحدة المعالجة المركزية المختلفة مثل علامة الحمل للحسابات غير الموقّعة وعلم الفائض للحسابات الموقّعة. يمكن أخذ هذه القيم في الاعتبار من خلال أوامر فرعية أو حسابية لاحقة .
تطبق لغة البرمجة C ، جنبًا إلى جنب مع مشتقاتها، علامة لجميع أنواع البيانات الصحيحة ، وكذلك "character" . بالنسبة للأعداد الصحيحة، يحدد المعدِّل غير الموقّع النوع ليكون غير موقّع. علامة الأعداد الصحيحة الافتراضية خارج حقول البت هي علامة، ولكن يمكن تعيينها صراحةً باستخدام المعدِّل الموقّع . على النقيض من ذلك، يعلن معيار C أن signed char و unsigned char و char هي ثلاثة أنواع مميزة، لكنه يحدد أن الثلاثة يجب أن يكون لها نفس الحجم والمحاذاة. علاوة على ذلك، يجب أن يكون لـ char نفس النطاق العددي مثل signed char أو unsigned char ، ولكن اختيار أيهما يعتمد على المنصة. يمكن جعل أحرف الأعداد الصحيحة غير موقعة باستخدام لاحقة U.
غالبًا ما تصدر المترجمات تحذيرًا عند إجراء مقارنات بين الأرقام الموقعة وغير الموقعة أو عند تحويل أحد الأرقام إلى الآخر. هذه عمليات خطيرة محتملة حيث أن نطاقات الأنواع الموقعة وغير الموقعة مختلفة.
| أجزاء | الحد الأدنى | الأعلى |
|---|---|---|
| 8 (وقعت) | -128 | 127 |
| 16 (وقعت) | -32768 | 32767 |
| 32 (وقعت) | -2147483648 | 2147483647 |
| 64 (وقعت) | -9223372036854775808 | 9223372036854775807 |
| 128 (وقعت) | −170141183460469231731687303715884105728 | 170141183460469231731687303715884105727 |
| 8 (غير موقع) | 0 | 255 |
| 16 (غير موقع) | 0 | 65535 |
| 32 (غير موقع) | 0 | 4294967295 |
| 64 (غير موقع) | 0 | 18446744073709551615 |
| 128 (غير موقع) | 0 | 340282366920938463463374607431768211455 |
انظر أيضا
- بت التوقيع
- تمثيلات الأرقام الموقعة
- علامة (رياضيات)
- نظام القياس الزاوي الثنائي ، مثال على الدلالات حيث لا تهم الإشارة
روابط خارجية
- "نظرة عامة على النوع الرقمي". دليل مرجعي لـ MySQL 5.0 . mysql.com. 2011. تم الاسترجاع في 6 يناير 2012 .
- "فهم قواعد تحويل الأعداد الصحيحة"، CERT C Coding Standard ، فريق الاستجابة للطوارئ الحاسوبية ، تم استرجاعه في 31 ديسمبر 2015
