Monday, 4 December 2017

نقطة ثابتة تمثيل ثنائي - خيارات


3.7.B النقطة الثابتة الثنائیة نظام النقطة الثنائیة الثابتة ھو مثال آخر علی نظام الأرقام العربیة. التمييز الوحيد من عشري هو الجذر. يستخدم ثنائي جذر 2 بدلا من 10. نحدد الجذر (قاعدة) باستخدام سوبسكريبت على الرقم. من الآن فصاعدا، ونحن لا نتحمل قاعدة من 10. 1001.101 2 1 2 3 0 2 2 0 2 1 1 2 0 1 2 -1 0 2 -2 1 2 -3 طريقة سهلة لقراءة ثنائي هو من خلال العمل اليسار و الحق من النقطة الثنائية، مضاعفة أو خفض قيمة الأرقام في كل خطوة: الأرقام المستخدمة في أي نظام عربي تتراوح دائما من 0 إلى الجذر 1. ومن شأن استخدام أرقام أكبر أن يجعل من الممكن تمثيل قيمة بأكثر من طريقة. على سبيل المثال، إذا سمحت نقطة ثابتة ثنائية استخدام الرقم 2، ثم يمكن تمثيل الرقم الثاني إما 2 أو 10. 3.7.1.Limitations من ثنائي تحويل 110 إلى ثنائي. لا يمكن القيام به: مثل محاولة تمثيل 13 في عشري. وهو يتطلب عددا لا حصر له من الأرقام. هذه مشكلة بالنسبة للحسابات النقدية. الحلول (بسد، سنت) نقطة عائمة أرقام نقطة ثابتة أرقام نقطة ثابتة هي طريقة بسيطة وسهلة للتعبير عن أرقام كسرية، وذلك باستخدام عدد ثابت من البتات. وكثيرا ما تستخدم الأنظمة التي لا يوجد بها دعم للأجهزة العائمة أرقام نقاط ثابتة لتمثيل الأرقام الكسرية. (أنظمة دون دعم الأجهزة العائمة نقطة تشمل مجموعة واسعة من الأجهزة - من الراقية دسبس نقطة ثابتة، فبغاس، و أسيكس مخصصة باهظة الثمن التي تعالج وسائل الإعلام تدفق أسرع من أي وحدة نقطة العائمة بنيت على الإطلاق إلى ميكروكنترولر المنخفضة للغاية ). يشير مصطلح النقطة الثابتة إلى موضع النقطة الثنائية. النقطة الثنائية مماثلة للنقطة العشرية لعدد قاعدة-عشرة، ولكن بما أن هذا ثنائي وليس عشري، يتم استخدام مصطلح مختلف. وفي الثنائيات، يمكن أن تكون البتات إما 0 أو 1 ولا يوجد رمز منفصل لتحديد النقطة التي تكمن فيها النقطة الثنائية. ومع ذلك، فإننا نتخيل، أو نفترض، أن النقطة الثنائية يقيم في موقع ثابت بين بت المعينة في الرقم. على سبيل المثال، في رقم 32 بت، يمكننا أن نفترض أن النقطة الثنائية موجودة مباشرة بين البتات 15 (15 لأن البتة الأولى مرقمة 0 وليس 1) و 16، مما يعطي 16 بتة لجزء العدد الكامل و 16 بتة الجزء الكسري. وتجدر الإشارة إلى أن البتة الأكثر دلالة في حقل الرقم الكامل تسمى عموما بتة الإشارة التي تترك 15 بتة لكامل حجم الأعداد. العرض والتحليل الدقيق عرض عدد النقاط الثابتة هو العدد الإجمالي للبتات المخصصة للتخزين بالنسبة إلى رقم النقطة الثابتة. إذا كنا تخزين الجزء كله وجزء كسور في مواقع التخزين المختلفة، فإن العرض سيكون المبلغ الإجمالي للتخزين لهذا العدد. ومدى عدد النقاط الثابتة هو الفرق بين العدد الأدنى الممكن، والحد الأقصى المسموح به. ودقة عدد النقاط الثابتة هي العدد الإجمالي للبتات للجزء الكسري من العدد. ولأننا نستطيع تحديد المكان الذي نريد أن نحدد فيه النقطة الثنائية الثابتة، يمكن أن تكون الدقة أي رقم يصل إلى عرض الرقم. لاحظ مع ذلك، أن أكثر دقة لدينا، وأقل مجموع النطاق لدينا. وهناك عدد من المعايير، ولكن في هذا الكتاب سوف نستخدم ن لعرض عدد نقطة ثابتة، ص للدقة، و R للمجموعة الإجمالية. لا يمكن تمثيل جميع الأرقام بالضبط عن طريق رقم نقطة ثابتة، وبالتالي يتم استخدام أقرب تقريب. الصيغة لحساب التمثيل الصحيح (X) في تنسيق Qm. n لعدد تعويم (x) هو: لتحويله مرة أخرى يتم استخدام الصيغة التالية: بعض الأمثلة في شكل Q3.4: العوامات التي تم اختيارها عشوائيا: بعض الأمثلة في (شائع جدا) 1 شكل Q7.8: لأن موقف النقطة الثنائية مفاهيمي تماما، فإن منطق إضافة وطرح أرقام النقطة الثابتة مطابق للمنطق المطلوب لإضافة وطرح الأعداد الصحيحة. وهكذا، عند إضافة نصف واحد زائد نصف في شكل Q3.4، فإننا نتوقع أن نرى: وهو ما يعادل واحد كما نتوقع. وهذا ينطبق أيضا على الطرح. وبعبارة أخرى، عندما نضيف أو نطرح أرقام النقطة الثابتة، فإن النقطة الثنائية في المجموع (أو الفرق) ستقع في نفس المكان تماما كما هو الحال في الرقمين اللذين نعمل عليهما. عند ضرب اثنين من 8 بت أرقام نقطة ثابتة سنحتاج 16 بت لعقد المنتج. ومن الواضح أنه بما أن هناك عددا مختلفا من البتات في النتيجة بالمقارنة مع المدخلات، ينبغي أن يتوقع أن تتحرك النقطة الثنائية. ومع ذلك، فإنه يعمل بالضبط بنفس الطريقة في ثنائي كما يفعل في عشري. عندما نضاعف رقمين في العشرية، يكون موقع النقطة العشرية N أرقام على يمين أرقام أقصى اليمين من المنتجات، حيث N هو مجموع عدد الأرقام الموجودة على الجانب الأيمن من النقطة العشرية في المضاعف والمضاعف . وهكذا، في عشري عندما نضاعف 0.2 مرات 0.02، نحصل على: المضاعف له رقم واحد إلى يمين النقطة العشرية، و مولتيبليكاند له رقمين إلى يمين النقطة العشرية. وبالتالي، فإن المنتج يحتوي على ثلاثة أرقام على يمين النقطة العشرية (أي أن النقطة العشرية تقع ثلاثة أرقام إلى اليسار). وهو يعمل نفسه في ثنائي. من المثال إضافة أعلاه، ونحن نعلم أن النصف الأول في شكل Q3.4 يساوي 0x8 في الست عشري. منذ 0x8 مرات 0x8 في عرافة 0x0040 (أيضا في عرافة)، يمكن أيضا أن يتوقع أن تكون النتيجة نقطة ثابتة 0x0040 - طالما أننا نعرف أين يقع نقطة ثنائي. يتيح كتابة المنتج في ثنائي: لأن كلا المضاعف و مولتيبليكاند يكون أربعة بت على يمين النقطة الثنائية، موقع النقطة الثنائية في المنتج هو ثمانية بت إلى اليسار. وبالتالي، فإن جوابنا هو 00000000000000، وهو، كما نتوقع، يساوي ربع. إذا أردنا أن يكون تنسيق الإخراج هو نفس شكل الإدخال، يجب علينا تقييد نطاق المدخلات لمنع الفائض. التحويل من Q7.8 إلى Q3.4 هو مسألة بسيطة لتحويل المنتج مباشرة من 4 بت. وغالبا ما تستخدم أرقام النقطة الثابتة داخليا في المرشحات الرقمية بما في ذلك مرشحات الأشعة تحت الحمراء و إير. وهناك عدد من الاعتبارات العملية لتنفيذ خوارزميات فير و إير باستخدام أرقام نقطة ثابتة. 2 3 العديد من الأنظمة المضمنة التي تنتج موجات جيبية، مثل مولدات دتمف، تخزن جدولا جيبيا في ذاكرة البرنامج. (تستخدم لتقريب وظائف جيبية () وجيب التمام ()). وبما أن مثل هذه الأنظمة غالبا ما تكون كميات محدودة جدا من ذاكرة البرنامج، وغالبا ما تستخدم أرقام نقطة ثابتة بطريقتين مختلفتين عند استخدام هذه الجداول: القيم المخزنة في الجداول، والحمالات المستخدمة لفهرسة في هذه الجداول. القيم المخزنة في الجدول الجيب إديت عادة يتم تخزين ربع واحد من وظائف جيب وجيب التمام في هذا الجدول. وعادة ما يكون هذا الربع رباعي حيث تنتج هذه الدوال قيم خرج في المدى من 0 إلى 1. وعادة ما تخزن القيم في مثل هذه الجداول كأرقام ثابتة - غالبا ما تكون أرقام 16 بتة بتنسيق Q0.16 غير موقعة أو أرقام 8 بتات في قيم Q0.8 غير الموقعة. يبدو أن هناك طريقتان شائعتان للتعامل مع حقيقة أن Q0.16 غير قادر على التعامل مع 1.0 بالضبط، إلا أنه يعالج الأرقام من 0 إلى (1.0-2-16): (أ) المقياس من قبل بالضبط قوة اثنين (في هذه الحالة 216 )، مثل معظم الأنظمة الأخرى ذات النقاط الثابتة، واستبدال قيم (مقطع) كبيرة جدا لتخزينها كأكبر قيمة يمكن تخزينها: بحيث يمثل 0 0، 0 0 يمثل 0x8000، (1.0-2-16) 0xFFFF، و 1.0 اقتطاع ويمثل أيضا 0xFFFF. 4 (b) المقياس بأكبر قيمة ممكنة (في هذه الحالة 0xFFFF)، بحيث يمكن تمثيل القيم القصوى والدنيا على النحو التالي: بحيث يمثل 0 على الشكل 0، (1.0-2-16) يمثل 0xFFFE، و 1.0 هو ممثلة بالضبط 0xFFFF. 5 عدد قليل من الناس رسم دوائر دقيقة إلى حد ما وحساب جيب وجيب التمام دقيقة إلى حد ما مع سبلاي بيزيه. يصبح الجدول 8 قيم تمثل منحنى بيزير واحد تقارب 18 من دائرة إلى دقة حوالي 4 أجزاء في المليون، أو 14 من دائرة إلى دقة حوالي 1 جزء في ألف. 6 7 كثير من الناس يفضلون تمثيل دوران (مثل الزوايا) من حيث المنعطفات. الجزء الصحيح من المنعطفات يقول كم حدث ثورات كاملة. وجزء الكسور من المنعطفات، عندما تضرب في 360 (أو 1 2 8) باستخدام معيار ثابت نقطة ثابتة الحساب، يعطي زاوية صالحة في نطاق -180 درجة (- راديان) إلى 180 درجة (راديان). وفي بعض الحالات، يكون من المناسب استعمال الضرب غير الموقعة (بدلا من الضرب الموقعة) على زاوية ثنائية، مما يعطي الزاوية الصحيحة في المدى من 0 إلى 360 درجة (2 راديان). والميزة الرئيسية لتخزين الزوايا كنقطة ثابتة جزء من منعطف هو السرعة. الجمع بين بعض زاوية الموقف الحالي مع بعض زاوية إضافية إيجابية أو سلبية للحصول على موقف جديد سريع جدا، حتى على بطيئة ميكروكنترولر 8 بت: يستغرق إضافة عدد صحيح واحد، وتجاهل تجاوز. الأشكال الأخرى لتخزين الزوايا تتطلب نفس الإضافة، بالإضافة إلى حالات خاصة للتعامل مع حالات حافة تفيض 360 درجة أو تندرج تحت 0 درجة. وبالمقارنة مع زوايا التخزين في شكل زاوية ثنائية، فإن تخزين الزوايا في أي شكل آخر - مثل 360 درجة لإعطاء ثورة كاملة أو 2 راديان لإعطاء ثورة كاملة - يؤدي حتما إلى بعض أنماط البتات التي تعطي زوايا خارج هذا النطاق، التي تتطلب خطوات إضافية للنطاق - تقلل من القيمة إلى المدى المطلوب، أو تنتج بعض أنماط البتات التي ليست زوايا صحيحة على الإطلاق (نان) أو كليهما. باستخدام تنسيق زاوية ثنائية في وحدات من المنعطفات يسمح لنا بسرعة (باستخدام التحول والقناع، وتجنب ضرب) فصل البتات في: بت التي تمثل عدد صحيح يتحول (تجاهلها عند البحث عن جيب الزاوية بعض الأنظمة أبدا عناء تخزين هذه بتات في المقام الأول) بتتان تمثلان البتات الرباعية التي تستخدم مباشرة للفهرسة في جدول البحث بتات ذات ترتيب منخفض أقل من خطوة واحدة في جدول الفهرس (بتات تراكم الطور، يتم تجاهلها عند البحث عن جيب الزاوية دون الاستكمال الداخلي) تعطي بتات الطور المنخفضة الترتيب تحسنا في تردد التردد، حتى بدون الاستيفاء. وتستخدم بعض الأنظمة البتات ذات الترتيب المنخفض للاستكمال الخطي بين القيم في الجدول. 12 هذا يسمح لك للحصول على مزيد من الدقة باستخدام جدول أصغر (توفير مساحة البرنامج)، من خلال التضحية بضع دورات على هذا الحساب الاستيفاء إضافية. وهناك عدد قليل من الأنظمة تحصل على مزيد من الدقة باستخدام جدول أصغر من ذلك بالتضحية بعدد قليل من الدورات لاستخدام هذه البتات ذات الترتيب المنخفض لحساب الاستكمال الداخلي المكعب. 4 ربما شكل زاوية ثنائي الأكثر شيوعا هو البراغي. برادس تحرير العديد من النظم جزءا لا يتجزأ من تخزين زاوية، وجزء كسري من المنعطفات، في شكل بايت ثنائي زاوية واحدة. 13 وهناك عدة طرق لتفسير القيمة في تلك البايتة، وكلها تعني (تقريبا أو أقل) نفس الزاوية: زاوية في وحدات من الخبازات (راديان ثنائية) مخزنة باعتبارها 8 بت عدد صحيح غير موقعة، من 0 إلى 255 الخبازات زاوية في وحدات من الخباز المخزنة باعتبارها 8 بت توقيع عدد صحيح، من -128 إلى 127 برادس زاوية في وحدات من المنعطفات، وتخزينها كدور كسور في شكل Q0.8 غير موقعة، من 0 إلى أقل من 1 فقط بدوره الكامل زاوية في وحدات من المنعطفات، وتخزينها كما تحول كسور في شكل Q0.7 () شكل، من -12 إلى أقل من 12 بدوره الكامل بدوره الكامل 14 هو 256 حمالات الصدر 15 هو 360 درجة. إذا كان بايت واحد لا يعطي ما يكفي من الدقة، ويمكن بسهولة توسيع نظام براد مع بت أكثر كسور - 65،536 التهم في المقابل يمكن أن تمثل في 16 بت. 16 لمزيد من القراءة إديت مقدمة إلى تمثيل رقم نقطة ثابتة في الحياة الحقيقية، ونحن نتعامل مع الأرقام الحقيقية - أرقام مع جزء كسور. معظم أجهزة الكمبيوتر الحديثة لديها دعم (الأجهزة) الأصلي لأرقام نقطة العائمة. ومع ذلك، فإن استخدام النقطة العائمة ليس بالضرورة الطريقة الوحيدة لتمثيل أرقام كسور. توضح هذه المقالة تمثيل النقطة الثابتة للأرقام الحقيقية. ويستخدم استخدام نوع بيانات النقطة الثابتة على نطاق واسع في معالجة الإشارات الرقمية وتطبيقات الألعاب، حيث يكون الأداء في بعض الأحيان أكثر أهمية من الدقة. كما سنرى في وقت لاحق، الحساب نقطة ثابتة هو أسرع بكثير من الحساب العائمة نقطة. تذكر أن الرقم الثنائي: يمثل القيمة: 1 2 5 1 2 4 0 2 3 1 2 2 0 2 1 1 2 0 الآن، إذا قمنا بتقسيم الرقم 53 بنسبة 2، فإننا نعلم أن النتيجة يجب أن تكون 26.5. ومع ذلك، كيف يمكننا تمثيل ذلك إذا كان لدينا سوى تمثيل صحيح مفتاح لتمثيل أرقام كسور، مثل 26.5 أعلاه، هو مفهوم النقطة الثنائية. النقطة الثنائية هي مثل النقطة العشرية في نظام عشري. وهو بمثابة مقسم بين العدد الصحيح والجزء الكسري من عدد. في النظام العشري، تشير النقطة العشرية إلى الموضع في الرقم الذي يجب أن يتضاعف المعامل بمقدار 10 0 1. على سبيل المثال، في الرقم 26.5، يكون للمعامل 6 وزن 10 0 1. ولكن ماذا يحدث لل 5 إلى حق العشرية ونحن نعلم من تجربتنا، أنه يحمل وزن 10 -1. ونحن نعلم أن العدد number26.5quot يمثل قيمة كوتونتي ستة ونصفوت لأن 2 10 1 6 10 0 5 10 -1 26.5 نفس المفهوم من العشرية يمكن تطبيقها على التمثيل الثنائي لدينا، مما يجعل نقطة نقطية. وكما هو الحال في النظام العشري، تمثل النقطة الثنائية معامل المصطلح 2 0 1. تحمل جميع الأرقام (أو البتات) إلى يسار النقطة الثنائية وزن 2 0. 2 1. 2 2. وهكذا. الأرقام (أو بت) على يمين النقطة الثنائية يحمل وزن 2 -1. 2 -2. 2 -3. وما إلى ذلك وهلم جرا. على سبيل المثال، الرقم: يمثل القيمة: الآن، استدعاء في الصف، ونحن نناقش تحويل عدد صحيح إلى اليمين عن طريق 1 بت موقف يعادل تقسيم عدد من 2. في حالة عدد صحيح، لأن ليس لدينا جزء كسري ، ونحن ببساطة لا يمكن أن تمثل رقما إلى اليمين من نقطة ثنائية، مما يجعل هذا التحول عملية تقسيم صحيح. ومع ذلك، فإنه ببساطة هو الحد من تمثيل صحيح لعدد ثنائي. بشكل عام، رياضيا، نظرا لموقف نقطة ثنائي ثابت، تحويل نمط بت من عدد إلى اليمين بمقدار 1 بت دائما تقسيم الرقم بمقدار 2. وبالمثل، فإن تحويل رقم إلى اليسار بمقدار 1 بت مضاعفة العدد من 2. و. عملية التحول أعلاه هو المفتاح لفهم ثابت تمثيل رقم النقطة. لتمثيل عدد حقيقي في أجهزة الكمبيوتر (أو أي جهاز بشكل عام)، يمكننا تحديد نوع رقم نقطة ثابتة ببساطة عن طريق ضمنا تحديد نقطة ثنائية لتكون في بعض موقف عدد. ثم سنلتزم ببساطة بهذه الاتفاقية الضمنية عندما نمثل الأرقام. لتحديد نوع نقطة ثابتة من الناحية النظرية، كل ما نحتاجه هو معلمتان: عرض تمثيل العدد، وموقع نقطة ثنائي ضمن الرقم سنستخدم تدوين فيكسيدلتو، بغت لبقية هذه المقالة، حيث تشير w إلى عدد البتات تستخدم ككل (عرض عدد)، و b تشير إلى موقف عد النقاط الثنائية من البتة الأقل دلالة (العد من 0). على سبيل المثال، يشير fg8t3gtlt إلى 8 نقطة ثابتة رقم النقطة، منها 3 الحق معظم بت كسور. ولذلك، فإن نمط البت: عند النظر إلى هذا الجدول، يمكننا بعد ذلك بسهولة ندرك أننا يمكن أن تمثل عدد -2.5 مع نمط بت كوت1011quot، إذا افترضنا أن النقطة الثنائية في موقف 1. الآن، يجب أن تجد أن أرقام نقطة ثابتة هي في الواقع قريب قريب لتمثيل صحيح. اثنين فقط يختلف في موقف نقطة ثنائية. في الواقع، قد تنظر حتى في تمثيل صحيح كقيمة خاصة من أرقام نقطة ثابتة، حيث نقطة ثنائية في موقف 0. وبالتالي فإن جميع العمليات الحسابية جهاز كمبيوتر يمكن أن تعمل على عدد صحيح يمكن تطبيقها على رقم نقطة ثابتة كذلك. ولذلك، فإن الفائدة من الحساب نقطة ثابتة هي أنها على التوالي إلى الأمام وكفاءة حساب صحيح الأعداد في أجهزة الكمبيوتر. يمكننا إعادة استخدام جميع الأجهزة التي بنيت لحساب صحيحا لأداء الأرقام الحقيقية الحساب باستخدام تمثيل نقطة ثابتة. في كلمة أخرى، الحساب نقطة ثابتة يأتي مجانا على أجهزة الكمبيوتر. العيب من رقم نقطة ثابتة، هو بالطبع من فقدان النطاق والدقة عند مقارنة مع العائمة تمثيل عدد النقطة. على سبيل المثال، في التمثيل gt1gt الثابتة، جزء كسور لدينا هو فقط دقيقة لكمية من 0.5. لا يمكننا تمثيل عدد مثل 0.75. يمكننا تمثيل 0.75 مع الثابتة lt8،2gt. ولكن بعد ذلك نحن مجموعة فضفاضة على جزء صحيح. C ليس لديها كوتيبيكوت الأصلي ل رقم نقطة ثابتة. ومع ذلك، نظرا لطبيعة تمثيل نقطة ثابتة، ونحن ببساطة لا تحتاج واحدة. أذكر جميع علم الحساب على أرقام نقطة ثابتة هي نفس العدد الصحيح، يمكننا ببساطة إعادة استخدام نوع صحيح إنت في C لأداء الحساب نقطة ثابتة. موقف النقطة الثنائية يهم فقط في الحالات عندما نقوم بطباعة على الشاشة أو إجراء الحساب مع كوتيبيكوت مختلفة (مثل عند إضافة إنت إلى fixlt32،6gt). نقطة ثابتة هي وسيلة بسيطة لكنها قوية جدا لتمثيل أرقام كسور في الكمبيوتر. من خلال إعادة استخدام جميع الدوائر الحسابية الصحيحة للكمبيوتر، الحساب نقطة ثابتة هي أوامر من حجم أسرع من العائمة الحساب نقطة. هذا هو السبب في أنه يتم استخدامها في العديد من التطبيقات لعبة و دسب. من ناحية أخرى، فإنه يفتقر إلى مجموعة والدقة التي العائمة تمثيل عدد نقطة تقدم. أنت، كمبرمج أو مصمم الدوائر، يجب أن تفعل المبادلة.

No comments:

Post a Comment