الحوسبة ذات 128 بت
في هندسة الحاسوب ، تُعرف الأعداد الصحيحة ذات 128 بت ، وعناوين الذاكرة ، ووحدات البيانات الأخرى، بأنها تلك التي يبلغ عرضها 128 بت (16 بايت ). كما تُعرف بنى وحدات المعالجة المركزية (CPU) ووحدات الحساب والمنطق (ALU) ذات 128 بت بأنها تلك التي تعتمد على سجلات أو ناقلات عناوين أو ناقلات بيانات بهذا الحجم.
اعتبارًا من يوليو 2026، لا توجد معالجات عامة الأغراض سائدة مصممة للعمل على أعداد صحيحة أو عناوين 128 بت، على الرغم من أن عددًا من المعالجات لديها طرق متخصصة للعمل على أجزاء من البيانات 128 بت كما هو ملخص في § الأجهزة .
التمثيل
يمكن للمعالج ذي عناوين البايت 128 بت أن يعنون مباشرةً ما يصل إلى 2^ 128 (عبر3.40 × 10³⁸ بايت ، وهو ما يتجاوز بكثير إجمالي البيانات التي تم التقاطها أو إنشاؤها أو نسخها على الأرض حتى عام 2024، والتي قُدِّرت بنحو 149 زيتابايت (أكثر من 2⁷⁶ بايت). [ 1 ] [ 2 ]
يمكن لمسجل ذي 128 بت تخزين 2^ 128 (أكثر من 3.40 × 10^ 38 ) قيمة مختلفة. يعتمد نطاق القيم الصحيحة التي يمكن تخزينها في 128 بت على التمثيل العددي المستخدم. مع التمثيلين الأكثر شيوعًا، يتراوح النطاق من 0 إلى 340,282,366,920,938,463,463,374,607,431,768,211,455 (2 ^128 - 1) عند التمثيل كعدد ثنائي ( غير مُوَقَّع ) ، ومن -170,141,183,460,469,231,731,687,303,715,884,105,728 (-2^ 127 ) إلى 170، 141، 183، 460، 469، 231، 731، 687، 303، 715، 884، 105، 727 (2 127 − 1) للتمثيل كمكمل ثنائي .
يمكن للأعداد العشرية ذات الدقة الرباعية (128 بت) تخزين أعداد ثابتة أو أعداد صحيحة ذات 113 بت بدقة دون فقدان الدقة (وبالتالي الأعداد الصحيحة ذات 64 بت على وجه الخصوص). كما يمكن للأعداد العشرية ذات الدقة الرباعية تمثيل أي موقع في الكون المرئي بدقة لا تقل عن الميكرومتر.
يمكن للأرقام العشرية ذات الفاصلة العائمة Decimal128 أن تمثل أرقامًا تصل إلى 34 رقمًا معنويًا.
الأجهزة
وصف الباحثون جهاز مقارنة متعدد 128 بت في عام 1976. [ 3 ]
يدعم نظام IBM System/360 Model 85 ، [ 4 ] ونظام IBM System/370 وخلفائه، العمليات الحسابية ذات الفاصلة العائمة 128 بت.
تدعم أجهزة الكمبيوتر المركزية من سلسلة Siemens 7.700 و 7.500 وما خلفها من أجهزة الكمبيوتر عمليات حسابية بفاصلة عائمة 128 بت. [ 5 ]
تتميز معظم وحدات المعالجة المركزية الحديثة بمجموعات تعليمات SIMD (مثل Streaming SIMD Extensions و AltiVec وغيرها)، حيث تُستخدم سجلات متجهة بحجم 128 بت لتخزين عدة أعداد أصغر، مثل أربعة أعداد عشرية بحجم 32 بت. وبذلك، يمكن لتعليمات واحدة معالجة جميع هذه القيم بالتوازي. مع ذلك، لا تُعالج هذه المعالجات أعدادًا فردية بطول 128 خانة ثنائية، بل إن سجلاتها المتجهة فقط هي التي يبلغ حجمها 128 بت.
كان جهاز DEC VAX يدعم العمليات على أنواع البيانات الصحيحة 128 بت ('O' أو الكلمة الثمانية) وأنواع البيانات العشرية 128 بت ('H-float' أو HFLOAT). وكان دعم هذه العمليات خيارًا إضافيًا للترقية وليس ميزة قياسية. ولأن سجلات VAX كانت بعرض 32 بت، فإن عملية 128 بت كانت تستخدم أربعة سجلات متتالية أو أربع كلمات طويلة في الذاكرة.
وفرت سلسلة ICL 2900 مُجمِّعًا 128 بت، وتضمنت مجموعة تعليماتها عمليات حسابية عشرية ونقطة عائمة 128 بت .
قام الباحثون في عام 1999 بتصميم وحدة معالجة مركزية مزودة بامتدادات وسائط متعددة 128 بت. [ 6 ]
من بين أجهزة ألعاب الفيديو من الجيل السادس ، استخدم كل من دريم كاست وبلاي ستيشن 2 مصطلح "128 بت" في حملاتهما التسويقية لوصف قدراتهما. كان معالج بلاي ستيشن 2 يتمتع بقدرات SIMD 128 بت. [ 7 ] [ 8 ] لم يدعم أي من الجهازين عنونة 128 بت أو العمليات الحسابية الصحيحة 128 بت.
تتضمن مواصفات RISC-V ISA الصادرة عام 2016 حجزًا لإصدار 128 بت من البنية، لكن التفاصيل لا تزال غير محددة عمدًا، نظرًا لقلة الخبرة العملية المتاحة مع هذا الحجم الكبير للكلمة. [ 9 ]
برمجة
كما تحاكي المترجمات ، على سبيل المثال، العمليات الحسابية للأعداد الصحيحة 64 بت على البنى ذات أحجام السجلات الأقل من 64 بت، تدعم بعض المترجمات أيضًا العمليات الحسابية للأعداد الصحيحة 128 بت. فعلى سبيل المثال، يحتوي مترجم GCC للغة C الإصدار 4.6 والإصدارات الأحدث على نوع بيانات للأعداد الصحيحة 128 بت __int128لبعض البنى. [ 10 ]__SIZEOF_INT128__ ويشير مترجم GCC والمترجمات المتوافقة معه إلى وجود العمليات الحسابية 128 بت عند تعريف الماكرو . [ 11 ] بالنسبة للغة البرمجة C ، يُعد دعم 128 بت اختياريًا، على سبيل المثال عبر int128_tالنوع، أو يمكن تنفيذه بواسطة امتداد خاص بالمترجم. أما لغة البرمجة Rust ، فتدعم الأعداد الصحيحة 128 بت بشكل مدمج (أصلاً عبر LLVM )، وهو مُنفذ على جميع المنصات. [ 12 ] ويمكن توفير نوع بيانات 128 بت الذي يوفره مترجم C في لغة Perl عبر Math::Int128الوحدة النمطية. [ 13 ] توفر لغة البرمجة C3 تطبيقًا لنوع بيانات عدد صحيح 128 بت. [ 14 ]
استخدامات أخرى
- تتكون المعرفات الفريدة عالميًا (UUID) من قيمة 128 بت.
- يقوم بروتوكول IPv6 بتوجيه حركة مرور شبكة الكمبيوتر ضمن نطاق عناوين يبلغ 128 بت.
- نظام الملفات ZFS هو نظام ملفات 128 بت.
- 128 بت هو حجم مفتاح شائع للتشفير المتناظر وحجم كتلة شائع لتشفير الكتل في علم التشفير .
- تُعرّف واجهة جهاز IBM i جميع المؤشرات على أنها 128 بت. تُترجم تعليمات واجهة الجهاز إلى مجموعة التعليمات الفعلية للأجهزة حسب الحاجة، مما يسمح بتغيير الأجهزة الأساسية دون الحاجة إلى إعادة تجميع البرنامج. كانت الأجهزة السابقة تستخدم مجموعة تعليمات CISC مع عنونة 48 بت، بينما الأجهزة الحالية تستخدم PowerPC / Power ISA 64 بت . في تطبيق PowerPC / Power ISA، تحتوي البايتات الأربعة الأولى على معلومات تُستخدم لتحديد نوع الكائن المُشار إليه، وتُستخدم البايتات الثمانية الأخيرة كعنوان ذاكرة افتراضية. [ 15 ] أما البايتات الأربعة المتبقية فهي غير مستخدمة، مما يسمح بتوسيع تطبيقات IBM i إلى عنونة 96 بت في المستقبل دون الحاجة إلى تغييرات في التعليمات البرمجية.
- يمكن أن يؤدي زيادة حجم الكلمة إلى تسريع مكتبات الرياضيات متعددة الدقة ، مع تطبيقات في علم التشفير ، وربما تسريع الخوارزميات المستخدمة في المعالجة الرياضية المعقدة ( التحليل العددي ، ومعالجة الإشارات ، وتحرير الصور المعقد ، ومعالجة الصوت والفيديو ).
- MD5 هي دالة تجزئة تنتج قيمة تجزئة مكونة من 128 بت.
- يستخدم برنامج Apache Avro رقمًا عشوائيًا بطول 128 بت كعلامة تزامن لتقسيم ملفات البيانات بكفاءة. [ 16 ] [ 17 ]
مراجع
- ↑ رينسل، ديفيد؛ غانتز، جون؛ ريدنينغ، جون (نوفمبر 2018). "رقمنة العالم من الحافة إلى المركز" (ملف PDF) . سيجيت تكنولوجي . IDC . ص 3. مؤرشف (ملف PDF) من الأصل في 7 سبتمبر 2021. تم الاطلاع عليه في 14 سبتمبر 2021 .
- ↑ "إحصاءات البيانات الضخمة: ما مقدار البيانات الموجودة في العالم؟ "
- ↑ ميد، كارفر أ .؛ باشلي، ريتشارد د.؛ بريتون، لي د.؛ دايمون، يوشياكي ت.؛ ساندو، ستيوارت ف. الابن (أكتوبر 1976). "مقارن متعدد 128 بت" ( ملف PDF) . مجلة IEEE للدوائر المتكاملة . 11 (5): 692-695 . رمز Bibcode : 1976IJSSC..11..692M . doi : 10.1109/JSSC.1976.1050799 . S2CID 27262034. مؤرشف (ملف PDF) من الأصل في 3 نوفمبر 2018.
- ↑ بادجز أ (1968). "الجوانب الهيكلية لنظام System/360 موديل 85، الجزء الثالث: امتدادات لبنية الفاصلة العائمة". مجلة أنظمة IBM . 7 : 22-29 . doi : 10.1147/sj.71.0022 .
- ↑ تعليمات التجميع (BS2000/OSD) . 1993.
- ^ سوزوكي، م. كوتاراجي، ك. هيروي، T.؛ ماجوشي، ه.؛ أوكاموتو، S .؛ أوكا، م. أوبا، أ. ياماموتو، Y.؛ فوروهاشي، م.؛ تاناكا، م.؛ يوتاكا، T.؛ أوكادا، T.؛ ناجاماتسو، م.؛ أوراكاوا، Y.؛ فونيو، م.؛ كونيماتسو، أ؛ غوتو، ه.؛ هاشيموتو، ك. إيد، ن.؛ موراكامي، هـ؛ أوتاجورو، Y.؛ أونو، أ. (نوفمبر 1999). "معالج دقيق مزود بوحدة معالجة مركزية 128 بت، وعشرة أجهزة MAC للفاصلة العائمة، وأربعة مقسمات للفاصلة العائمة، ووحدة فك ترميز MPEG-2". مجلة IEEE لدوائر الحالة الصلبة . 34 (11): 1608– 1618. بيب كود : 1999IJSSC..34.1608S . دوى : 10.1109/4.799870 .
- ↑ هينيسي، جون ل .؛ باترسون، ديفيد أ. (2003). هندسة الحاسوب: منهج كمي ( الطبعة الثالثة). دار مورغان كوفمان للنشر. ISBN 1-55860-724-2.
- ↑ ديفندورف، كيث (19 أبريل 1999). "شريحة سوني المشحونة عاطفياً". تقرير المعالج الدقيق . 13 (5). موارد التصميم الدقيق.
- ↑ ووترمان، أندرو؛ أسانوفيتش، كرست . "دليل مجموعة تعليمات RISC-V، المجلد الأول: مجموعة تعليمات مستوى المستخدم الأساسية، الإصدار 2.2" . جامعة كاليفورنيا، بيركلي. EECS-2016-118 . تاريخ الاسترجاع: 25 مايو 2017 .
- ↑ "سلسلة إصدارات GCC 4.6 - التغييرات والميزات الجديدة والإصلاحات" . تم الاطلاع عليه بتاريخ 25 يوليو 2016 .
- ↑ مارك جليس (26 أغسطس 2015). "عدد صحيح 128 بت - توثيق غير منطقي؟" . GCC-Help . تم الاطلاع عليه في 23 يناير 2020 .
- ↑ "i128 – Rust" . doc.rust-lang.org . تم الاطلاع عليه بتاريخ 25 يونيو 2020 .
- ↑ "Math::Int128" . metacpan.org . تم الاطلاع عليه بتاريخ 25 يونيو 2020 .
- ↑ "الأنواع" . لغة برمجة C3 . تم الاطلاع عليه بتاريخ 12 يونيو 2026 .
- ↑ فرانك ج. سولتيس (1997). داخل نظام AS/400، الطبعة الثانية . دار نشر ديوك. رقم ISBN 978-1-882419-66-1.
- ↑ كليمان، مارتن (24 يناير 2013). "ردًا على: علامات التزامن" . مؤرشف من الأصل في 27 سبتمبر 2015.
- ↑ "مواصفات أباتشي أفرو 1.8.0" . مؤسسة برمجيات أباتشي .
- وحدة البيانات
