ما هي أخطاء الرياضيات الشائعة التي يجب أن أكون على دراية بها عند استخدام .NET على منصات X32 و X64؟

StackOverflow https://stackoverflow.com/questions/4082524

سؤال

ما الذي يجب أن أضعه في الاعتبار عند إجراء الحسابات باستخدام .NET؟

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

هل كانت مفيدة؟

المحلول

تذكر دائمًا أن الكسور الثنائية في نقاط النقطة العائمة ، أي سيتم تمثيل رقمك بسلسلة ملخصات من 2^(-n) حيث يكون n عددًا صحيحًا من 1 إلى (حجم mantissa) الذي تم رفعه إلى بعض الأسعار N. decimal للحسابات المالية.

تذكر أيضًا أن الكلمة 64 بت التي تكتبها على معالج 32 بت ليست ذرية وبالتالي فهي ليست آمنة للخيط. بشكل عام ، حاول أن تكون بذل قصارى جهدك لعدم توقع أن تكون الحالة المشتركة القابلة للتغيير آمنة دائمًا للقراءة.

نصائح أخرى

تحتاج إلى أن تتذكر أن الأنواع الرقمية المختلفة لها نطاقات مختلفة: ألق نظرة على الثابت MinValue و MaxValue الخصائص. إذا تجاوزت هذه النطاقات (عن طريق الإضافة أو الضرب أو أي شيء آخر) ، فلن تكون الإجابات هي ما تعتقد أنها يجب أن تكون. (أرقام تلتف حولها من الحد الأقصى إلى الحد الأدنى.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top