نايبل

في لغة الكمبيوتر، النايبل (وغالبا تكتب nibble أو nyble لتحاكي هجاء كلمة byte) هي تجمع من أربعة بت،[1] أو نصف أوكتيتي. ونظرا لأن النايبل تتضمن 4 بت (Bit 4)، فبالتالي يكون لدينا 16 قيمة ممكنة (24)، لذا فإن النايبل تتطابق مع الأرقام العشرية ذات الستة أعداد (لذلك يشار إليها عادة على أنها «ستة أرقام» أو «هيكسيت»).

جدول بالأشكال والأحرف مرتبة حسب لغة نايبل.

ومن استخدامات مصطلح النايبل في السابق كان عام 1977 في مجموعة تكنولوجيا التعامل البنكي مع العميل في سيتي بنك حيث نشأ هناك معيار ما قبل الأيزو 8583 للرسائل الخاصة بالمعاملات بين آلات النقود ومراكز بيانات سيتي بنك، حيث كانت النايبل وحدة المعلومات الرئيسية.

يتم تمثيل البايت الكامل (الأوكتيت) برقمين سداسيين عشريين، لذلك فكان من الشائع عرض بايت (8 بت) من المعلومات في هيئة اثنان من النايبل. وتعرف النايبل يضا باسم «نصف أوكتيت semioctet» أو «الرباعية quartet» في بيئة عمل الشبكات أو الاتصالات. في بعض الأحيان يتم تمثيل مجموعة قيم مكونة من 256 بايت بجدول 16×16 الذي يوضح شفرة|شفرات سداسية عشرية قابلة للقراءة لكل قيمة.

وقد نشأ مصطلح «نايبل» من حقيقة أن المصطلح «بايت» ذو لفظة متجانسة مع الكلمة الإنجليزية " bit ". والنايبل عبارة عن بايت صغير، والذي توضح في هذا السياق على أنها «نصف بايت». والتهجئة البديلة لهذه الكلمة "nibble" تعادل تهجئة كلمة "byte" وقد تم الإشارة إلى هذا الأمر في افتتاحية مجلة كيلوباود وبايت Kilobaud and Byte في بداية الثمانينات.

وتستخدم كلمة نايبل لوصف كم الذاكرة المستخدم لتخزين رقم من عدد مخزن في صيغة عشرية جمعية في الإطار الرئيسي لآي بي إم IBM. تستخدم هذه التقنية في جعل العمليات الحسابية أسرع وتصحيح الأخطاء بصورة أسهل. يتم تقسيم البايت ذو الثماني أجزاء إلى النصف وتستخدم كل نايبل لتخزين رقم واحد. آخر نايبل للمتغير يتم الاحتفاظ به من أجل الإشارة. ومن ثم فإن المتغير الذي يمكنه تخزين ما يصل إلى تسع أرقام سيتم «جمعه» في خمسة بايت. وقد نتجت سهولة تصحيح الأخطاء من قابلية الأرقام للقراءة في مجموعة من ستة أرقام hex dump يمكن من خلالها استخدام رقمين سداسيين لتمثيل قيمة البايت، مثل 16×16 = 28.

وعلى مر التاريخ، صادفنا الكثير من الحالات التي تم فيها استخدام مصطلح نايبل ليعبر عن مجوعة من الأجزاء الرقمية الأقل من ثمانية، والتي لم تكن بالضرورة أربعة. في خط الكمبيوتر المصغر أبل 2 Apple II Microcomputer Line، كان يتم التحكم في معظم مشغلات الأسطوانات عبر البرنامج. كتابة البيانات على القرص كانت تتم عبر تحويل صفحة حجمها 256 بايت إلى مجموعات من النايبل ذات الخمس أجزاء ولاحقا من ستة أجزاء، وكان تحميل البيانات من القرص يتطلب العكس. لاحظ أيضا أن مصطلح «بايت» يحيط به نفس الغموض، ففي وقت ما تعني بايت مجموعة من الأجزاء والتي ليس بالضرورة أن تكون ثمانية. أما اليوم فإن المصطلح «بايت» والمصطلح «نايبل» يشيران إلى مجموعات من 8 أجزاء وأربعة أجزاء على التوالي وغالبا ما لا تستخدم لأي أحجام أخرى. مصطلح «نصف نايبل» (أو "quartyr") يستخدم ليشير إلى مجموعة من جزأين أو نصف نايبل.

الستة عشر نايبل وما يكافئها في الأنظمة الرقمية الأخرى:

0hex==0 (عدد)==0oct0000
1hex==1 (عدد)==1oct0001
2hex=2 (عدد)=2oct0010
3hex==3 (عدد)==3oct0011
4hex=4 (عدد)=4oct0100
5hex==5 (عدد)==5oct0101
6hex=6 (عدد)=6oct0110
7hex==7 (عدد)==7oct0111
8hex==8 (عدد)==10oct1000
9hex=9 (عدد)=11oct1001
Ahex==10 (عدد)==12oct1010
Bhex==11 (عدد)==13oct1011
Chex==12 (عدد)==14oct1100
Dhex=13 (عدد)=15oct1101
Ehex=14 (عدد)=16oct1110
Fhex==15 (عدد)==17oct1111

استخراج نايبل من البايت

في لغة البرمجة السي:

#define HINIBBLE(b) (((b) >> 4) & 0x0F)
#define LONIBBLE(b) ((b) & 0x0F)

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

على سبيل المثال:

HINIBBLE(0xAB)==0xA and LONIBBLE(0xAB)==0xB.

المراجع

  1. Hall، D. V. (1980). Microprocessors and Digital Systems. McGraw-Hill. مؤرشف من الأصل في 13 أغسطس 2020. {{استشهاد بكتاب}}: تحقق من التاريخ في: |سنة= لا يطابق |تاريخ= (مساعدة)

وصلات خارجية

قالب:Computer Storage Volumes

  • أيقونة بوابةبوابة تقانة المعلومات
  • أيقونة بوابةبوابة علم الحاسوب
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.