17Aug
عد من الصفر هو ممارسة شائعة جدا في العديد من لغات الكمبيوتر، ولكن لماذا؟قراءة على النحو الذي نستكشف هذه الظاهرة ولماذا هو واسع جدا.
سؤال اليوم & أمب؛تأتي جلسة الجواب إلينا من باب المجاملة، وهو قسم فرعي من "ستاك إكسهانج"، وهو عبارة عن مجموعة من المواقع على شبكة الإنترنت.
السؤال
قارئ المستخدم النظيف دراغونلورد هو الغريب حول لماذا معظم أنظمة التشغيل و لغات البرمجة العد من الصفر.يكتب:
أجهزة الكمبيوتر تقليديا رصيد القيم العددية بدءا من الصفر.على سبيل المثال، تبدأ الصفائف في لغات البرمجة المستندة إلى C من الفهرس صفر.
ما هي الأسباب التاريخية لهذا، وما هي المزايا العملية التي يعول عليها من الصفر على حساب واحد؟
لماذا فعلا؟وعلى نطاق واسع مثل الممارسة، هناك بالتأكيد أسباب عملية لتنفيذها.
يقوم المساهم المتميز
سوبيروسر ماتيو بتقديم الارقام التالية:
يعد حساب الصفائف من 0 تبسيط حساب عنوان الذاكرة لكل عنصر.
إذا تم تخزين صفيف في موضع معين في الذاكرة( يسمى العنوان) يمكن حساب موضع كل عنصر كعنصر
( n) = أدرس + n * size_of_the_elementإذا كنت تعتبر العنصر الأول الأول، فإن الحسابيصبح
عنصر( ن) = عنوان +( n-1) * size_of_the_elementلا فرق كبير لكنه يضيف الطرح لا لزوم لها لكل وصول.
تم تعديله ليضيف:
- إن استخدام فهرس الصفيف كإزاحة ليس شرطا ولكن مجرد عادة.ويمكن للنظام أن يخفى تخالف العنصر الأول ويؤخذ في الاعتبار عند تخصيص العنصر والإشارة إليه.
- نشرت ديجكسترا ورقة "لماذا يجب أن يبدأ الترقيم عند الصفر"( بدف) حيث يشرح لماذا البدء ب 0 هو خيار أفضل.بدءا من الصفر يسمح تمثيل أفضل من النطاقات.
إذا كنت تبحث عن الخوض في الجواب أعمق، ورقة ديجكسترا هو قراءة بالمعلومات.
هل لديك شيء لإضافة إلى التفسير؟الصوت قبالة في التعليقات.هل ترغب في قراءة المزيد من الإجابات من مستخدمي إكساك إكسهانج؟تحقق من موضوع المناقشة الكامل هنا.