آي تربل إي 754 المنقح

الصيغ الحسابية

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

صيغ التبادل

الهدف من هذه الصيغ هو تبادل بيانات الفاصلة العائمة عن طريق سلاسل بتات ثابتة الطول لكل صيغة.
يضم المعيار تعريف صيغ تبادل بطول 16 بت و32 بت و64 بت ومضاعفات 32 بت≥ 128 لتبادل أعداد الفاصلة العائمة الثنائية. تستخدم صيغة 16 بت في تبادل أو تخزين الأرقام الصغيرة (للرسوميات مثلا).
يتم تمثيل صيغ التبادل الثنائية هذه بنفس الطريقة المستخدمة في معيار IEEE 754-1985: بت للإشارة يليها w بت للأس تمثل إزاحة الأس بالقيمة bias وp-1 بت تمثل المعامل. يحسب عدد البتات المستخدمة في تمثيل الأس في أي صيغة مكونة من k بت كالتالي w = floor(4 log2(k))−13. وتنطبق هذه القاعدة على صيغتي 64 و128 بت، أما صيغتي 16 و32 بت فتستخدم بتات لتمثيل الأس (5 و8) أكثر مما تمح به هذه القاعدة (3 و7).
كما هو الحال في معيار IEEE 754-1985 يوجد بعض السلاسة في تمثيل القيم الغير رقمية ذات المؤشر.
يوجد صيغ تبادل بمضاعفات 32 بت لتبادل أرقام الفاصلة العائمة العشرية.
تمثل الأعداد في صيغ التبادل العشرية بنفس الطريقة تقريبا باستخدام الإشارة والأس والمعامل فيما عدا استخدام أسلوب أكثر تعقيدا لإتاحة تمثيل المعامل كسلسلة مضغوطة من الأرقام العشرية (أرقام دينسيلي العشرية المضغوطة Densely packed decimal) أو عدد ثنائي. الأرقام التي يمكن تمثيلها واحدة في كلا الأسلوبين، والقيم الغير رقمية ذات المؤشر لها تمثيل خاص بها (ومجموعة مماثلة من قيم payloads)

خوارزميات التقريب

يعرف المعيار خمس خوارزميات تقريب. أول إثنين يقربان لأقرب قيمة ويسمى الآخرون بخوارزميات التقريب الموجه:

مقياس الترتيب الكلي

يقدم المعيار المقياس totalOrder الذي يعرف الترتيب الكلي لجميع أعداد الفاصلة العائمة في كل صيغة، ويتفق مع عمليات المقارنة العادية حين تقول أن عددا أكبر من آخر، ولكن عمليات المقارنة العادية تتعامل مع القيم الغير رقمية ككميات غير مرتبة وتساوي بين -0 و+0. أما totalOrder فهو قادر على ترتيب هذه الحالات كما أنه يميز بين الطرق المختلفة لتمثيل القيم غير الرقمية ويفرق بين طرق تمثيل العدد العشري الواحد.

أسلوب بديل للتعامل مع الاستثناءات

يوصي المعيار باستخدام أساليب مختلفة للتعامل مع الاستثناءات مثل traps (استثناءات تغير خط سير البرنامج بشكل ما) وأساليب التعامل مع الاستثناءات الأخرى التي تقاطع خط سير البرنامج مثل try/catch. تبقى آلية traps وغيرها من آليات التعامل مع الاستثناءات اختيارية كما كانت في معيار IEEE 754-1985.

عمليات يوصى بها

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

حساب قيمة التعبيرات الحسابية

يوصي المعيار بكيفية تعريف معايير لغات البرمجة لمعاني سلاسل من العمليات كما يشير إلى التفاصيل الصغيرة في المعنى الحرفي وتحقيق الامثلية optimization التي تغير قيمة الناتج.

القابلية للتكرار

ترك معيار IEEE 754-1985 المجال لبعض الاختلافات بين تطبيق وآخر (مثل طرق تمثيل بعض القيم والتعرف على بعض الاستثناءات). ضيق معيار IEEE 754-2008 مجال الاختلاف في هذه المسائل ولكن ما زالت هناك بعض الاختلافات (خاصة في الصيغ الثنائية). توصي الفقرة الخاصة بالقابلية للتكرار أنه يجب أن يقدم معيار اللغة بعض وسائل كتابة برامج متكررة النتائج (برامج نتائجها واحدة مع جميع التطبيقات المختلفة للغة) وتصف ما ينبغي القيام به للحصول على نتائج متكررة.