الفرق بين المراجعتين ل"Ruby/Integer/~"

من موسوعة حسوب
< Ruby‏ | Integer
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>~‎</code> الخاص بالصنف <code>Integer</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف:...')
 
ط (مراجعة وتدقيق)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>~‎</code> الخاص بالصنف <code>Integer</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: المعامل <code>~‎</code> الخاص بالصنف <code>Integer</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
+
[[تصنيف: Ruby Operator]]
 
[[تصنيف: Ruby Integer]]
 
[[تصنيف: Ruby Integer]]
نفذ المعامل <code>~</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.
+
يعيد المعامل <code>~</code> مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.
 +
 
 +
نظريًا، يُعد طول الأعداد الصحيحة لا نهائيًا، لذلك فإنّ النتيجة تُحسب كما لو كان هناك عدد غير محدود من البتات التي قيمتها واحد إلى اليسار. في التمثيل الست عشري (hex representations)، يتم التعبير عن ذلك بوضع نقطتين إلى يسار الرقم.
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">~int  →  integer‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">~int  →  integer‎</syntaxhighlight>
==المعاملات==
+
==القيمة المعادة==
==القيمة المُعادة==
+
يعاد مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.
نفذ المعامل <code>~</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.
 
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>~‎</code>:
 
مثال على استخدام التابع <code>~‎</code>:
سطر 14: سطر 15:
 
‎</syntaxhighlight>
 
‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/Integer/^|^]]</code>: نفذ المعامل <code>^</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.
+
*المعامل <code>[[Ruby/Integer/or|^]]</code>: ينفذ العملية XOR بين بتات العددين المعطيين.
* التابع <code>[[Ruby/Integer/&|&]]</code>: نفذ المعامل <code>^</code> عملية "أو" الحصرية (EXCLUSIVE OR) بين بتات طرفي العملية، بتةً بتةً.
+
*المعامل <code>[[Ruby/Integer/and|&]]</code>: ينفذ العملية AND بين بتات العددين المعطيين.
 
 
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Integer.html#method-i-~ قسم التابع ~‎ في الصنف Integer‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/Integer.html#method-i-~ قسم المعامل ~‎ في الصنف Integer‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 12:22، 14 نوفمبر 2018

يعيد المعامل ~ مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.

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

البنية العامة

~int    integer

القيمة المعادة

يعاد مكمل العدد الذي استُدعي معه، إذ يقلب قيمة كل بت من بتات العدد.

أمثلة

مثال على استخدام التابع ~‎:

sprintf("%X", ~0x1122334455)    #=> "..FEEDDCCBBAA"

انظر أيضا

  • المعامل ^: ينفذ العملية XOR بين بتات العددين المعطيين.
  • المعامل &: ينفذ العملية AND بين بتات العددين المعطيين.

مصادر