في برمجة الكمبيوتر، غالبًا ما يُفترض أن نوع البيانات مزدوجة الدقة لديه دقة تقريبية تبلغ 15 منزلة عشرية. ومع ذلك، يبدو أن بعض تمثيلات الأرقام، مثل 1.0/7.0، تتمتع بدقة أكبر عند تمثيلها داخليًا داخل المتغير. ستستكشف هذه المقالة سبب حدوث ذلك ولماذا توصف الدقة غالبًا بحوالي 15 منزلة عشرية.
يحتوي IEEE double على 53 بتة مهمة، أي ما يعادل تقريبًا 15.95 رقمًا عشريًا. لحساب التقريب، يقوم التنفيذ بتعيين الدقة (DBL_DIG) إلى 15. وهذا يوفر تقريبًا رقمًا عشريًا إضافيًا من الدقة يتجاوز ما يشير إليه DBL_DIG.
عند عرض مزدوج، عادةً ما يقوم المترجمون بتقريب القيمة بناءً على الدقة. على سبيل المثال، 1.0/7.0، عند عرضها مع "%.17g"، تكون دقة 17 رقمًا. ومع ذلك، إذا تم استخدام "%.64g"، فلن تظهر أي أرقام مهمة تتجاوز الدقة المتوقعة المكونة من 15 رقمًا.
الأرقام ذات الدقة المزدوجة لها تمثيل داخلي يسمح بحوالي 15.95 رقمًا عشريًا من الدقة. ومع ذلك، نظرًا للتقريب، يتم عادةً تعيين الدقة المعروضة إلى 15 منزلة عشرية. يساعد هذا التفسير في توضيح سبب ظهور بعض الأرقام المحددة، مثل 1.0/7.0، بدقة أكبر داخليًا ولكنها لا تزال متوافقة مع الدقة المقدرة المكونة من 15 رقمًا عند عرضها.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3