الإشارة العددية

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

نظرًا لأن الأعداد ذات الإشارة يمكنها تمثيل الأعداد السالبة، فإنها تفقد جزءًا من نطاق الأعداد الموجبة الذي يمكن تمثيله فقط باستخدام الأعداد بدون إشارة من نفس الحجم (بوحدة البِت)، إذ يُخصص نحو نصف القيم الممكنة للأعداد غير الموجبة، بينما يمكن لنوع البيانات بدون إشارة تخصيص جميع القيم الممكنة لتمثيل الأعداد الموجبة.

فعلى سبيل المثال، يمكن لعدد صحيح 16-بت باستخدام تمثيل “متمم الاثنين” ( المتمم الثنائي) أن يُخزِّن القيم من −32768 إلى 32767 شاملة، بينما يمكن لعدد صحيح 16-بت بدون إشارة أن يُخزِّن القيم من 0 إلى 65535. في هذا النوع من التمثيل، تشير البتة اليسرى (الأكثر أهمية) إلى ما إذا كانت القيمة سالبة (1 للسالب، 0 للموجب أو الصفر).
 في لغات البرمجة 
في معظم المعماريات الحاسوبية، لا يوجد تمييز بين الأنواع الموقعة وغير الموقعة على مستوى لغة الآلة. ومع ذلك، فإن تعليمات العمليات الحسابية غالبًا ما تضبط إشارات مختلفة في وحدة المعالجة المركزية، مثل إشارة الحمل للعمليات غير الموقعة، وإشارة تجاوز السعة ( علم التجاوز ) للعمليات الموقعة. ويمكن استخدام هذه الإشارات في التعليمات التالية للتفرع أو إجراء عمليات حسابية إضافية.

في لغة البرمجة C ومشتقاتها، يتم تطبيق خاصية التوقيع (الإشارة العددية) على جميع أنواع البيانات الصحيحة، بما في ذلك نوع “الحرف” (شخصية). بالنسبة للأعداد الصحيحة، يُستخدم المُعدِّل بدون إشارة لتحديد النوع كنوع غير موقع. وبشكل افتراضي، تكون الأنواع الصحيحة موقعة ما لم يُذكر خلاف ذلك، ولكن يمكن تحديد التوقيع صراحةً باستخدام المُعدِّل موقع.

وعلى النقيض من ذلك، يُعرّف معيار لغة C الأنواع شار موقع وشار غير موقع ودَبّابة كثلاثة أنواع متميزة، ولكنه يفرض أن يكون لها جميعًا نفس الحجم والمحاذاة (تحالف). بالإضافة إلى ذلك، يجب أن يمتلك نوع دَبّابة نفس النطاق العددي إما لـ شار موقع أو شار غير موقع، ويُحدد هذا الاختيار بناءً على المنصة المستخدمة.

يمكن جعل الثوابت العددية من النوع غير الموقع عن طريق استخدام اللاحقة U.

وغالبًا ما تصدر المترجمات تحذيرات عند إجراء مقارنات بين أعداد موقعة وغير موقعة، أو عند تحويل أحدهما إلى الآخر، نظرًا لاحتمالية حدوث سلوك غير متوقع بسبب اختلاف نطاق القيم بين النوعين.
+ نطاقات القيم لأنواع البيانات الرقمية عدد البتات  النوع  الحد الأدنى  الحد الأقصى 8  موقّع  −128  127 16  موقّع  −32٬768  32٬767 32  موقّع  −2٬147٬483٬648  2٬147٬483٬647 64  موقّع  −9٬223٬372٬036٬854٬775٬808  9٬223٬372٬036٬854٬775٬807 128  موقّع  −170٬141٬183٬460٬469٬231٬731٬687٬303٬715٬884٬105٬728  170٬141٬183٬460٬469٬231٬731٬687٬303٬715٬884٬105٬727 8  غير موقّع  0  255 16  غير موقّع  0  65٬535 32  غير موقّع  0  4٬294٬967٬295 64  غير موقّع  0  18٬446٬744٬073٬709٬551٬615 128  غير موقّع  0  340٬282٬366٬920٬938٬463٬463٬374٬607٬431٬768٬211٬455

 مراجع 

تصنيف:أنواع البيانات
تصنيف:برمجيات
تصنيف:حسابيات حاسوبية