كيفية تحويل الأعداد الثنائية إلى أعداد عشرية في لغة سي

Kyfyt Thwyl Ala Dad Althnayyt Aly A Dad Shryt Fy Lght Sy



الأرقام الثنائية هي مجموعات من 0 و 1 ، بينما الأرقام العشرية هي أرقام أساس 10. في برمجة C ، نقوم بتحويل الأرقام الثنائية إلى أرقام عشرية لتحسين أداء الكود وتسهيل فهم المتعلمين.

سيتناول هذا المبدأ التوجيهي كيفية تحويل الأرقام الثنائية إلى أرقام عشرية في C.

قبل أن ندخل في المفهوم نفسه ، دعنا نرى ما هي الأرقام الثنائية والعشرية في C.







تنسيقات الأرقام الثنائية والعشرية في C

الأعداد الثنائية عبارة عن أرقام ممثلة في شكل مزيج من رقمين 0 و 1 ، ويشار إليهما بنظام العد الأساسي 2. من ناحية أخرى ، فإن الأرقام العشرية هي أرقام أساس 10 تتكون من أرقام تتراوح من 0 إلى 9.



كما ترى بالاسم ثنائي وهو ما يعني اثنين ، لذلك عندما يكون لدينا أرقام في شكل مزيج من رقمين 0 و 1 ، فإننا نسميها أرقامًا ثنائية. يشار إليه على أنه نظام الأرقام الأساسي 2.



لماذا نقوم بتحويل الأعداد الثنائية إلى أعداد عشرية في لغة سي

يمثل العمل مع الأرقام الثنائية تحديًا للمطورين نظرًا لوجود العديد من المجموعات الممكنة من 0 و 1. من ناحية أخرى ، فإن الأرقام العشرية أسهل في الفهم والمعالجة ، مما يجعلها طريقة أسرع وأكثر كفاءة لبرامج سي. يتضمن تحويل الأرقام الثنائية إلى أرقام عشرية في C ضرب جميع الأرقام الثنائية بالقوة المناسبة للرقم اثنين وإضافة النتائج ، وهو ما يتم باستخدام الحلقات.





خوارزمية بسيطة لتحويل ثنائي إلى عشري في C.

فيما يلي خوارزمية بسيطة لتحويل ثنائي إلى عشري في C باستخدام ست خطوات بسيطة:

  • خذ رقمًا ثنائيًا كمدخلات من المستخدم.
  • قم بتهيئة متغير 'عشري' إلى 0 ومتغير 'أساسي' إلى 1.
  • استخرج الرقم الموجود في أقصى اليمين من الرقم الثنائي باستخدام عامل التشغيل المعياري (٪) ، وأضف حاصل ضرب هذا الرقم والقاعدة إلى المتغير العشري.
  • اضرب المتغير الأساسي في 2.
  • احذف الرقم الموجود في أقصى اليمين من الرقم الثنائي باستخدام القسمة الصحيحة (/).
  • كرر الخطوات من 3-5 حتى تتم معالجة كافة الأرقام.
  • اعرض القيمة العشرية للرقم الثنائي المخزن في المتغير 'العشري'.

تحويل الأعداد الثنائية إلى الأعداد العشرية في ج

فيما يلي رمز بسيط لتحويل الأرقام الثنائية إلى أرقام عشرية في برمجة لغة سي.



# تضمين

# تضمين

int رئيسي ( ) {

طويل طويل أ ؛

printf ( 'الرجاء إدخال رقم ثنائي:' ) ؛

مسح ( '٪ lld' و & أ ) ؛

printf ( '٪ lld في ثنائي =٪ d في شكل عشري' و أ و ثنائي إلى عشري ( أ ) ) ؛

يعود 0 ؛ }

int ثنائي إلى عشري ( طويل طويل أ ) {

int ديسمبر = 0 و ب = 0 و ص ؛

بينما ( أ ! = 0 ) {

ص = أ ٪ 10 ؛

أ / = 10 ؛

ديسمبر + = ص * الأسرى ( 2 و ب ) ؛

++ ب ؛

}

يعود ديسمبر ؛

}

في الكود أعلاه ، يتم إنشاء وظيفة عامة كاسم 'ثنائي إلى عشري' . ثم بشكل رئيسي ، نعلن عن متغير طويل مثل 'أ' واطلب من المستخدم إضافة رقم ثنائي وتحويله إلى رقم عشري عن طريق استدعاء 'ثنائي إلى عشري' تعمل مع معلمة '. في ال 'ثنائي إلى عشري' تعريف دالة تحويل عشري من خلال حلقة while.

انتاج |

يمكنك أيضًا استخدام ملف سترتول () وظيفة لتحويل الأرقام الثنائية إلى الكسور العشرية في البرمجة بلغة C.

فيما يلي رمز هذه الوظيفة:

# تضمين

# تضمين

int رئيسي ( ) {

شار binary_string [ ] = '1110' ؛

شار * ptr ؛

طويل القيمة_العشرية ؛

القيمة_العشرية = تحطم ( binary_string و & ptr و 2 ) ؛

printf ( 'سلسلة ثنائية' ٪ س 'يساوي القيمة العشرية٪ ld. ' و binary_string و القيمة_العشرية ) ؛

يعود 0 ؛

}

الكود أعلاه يحول سلسلة ثنائية '1110' إلى قيمته العشرية المكافئة باستخدام سترتول () دالة ، تأخذ السلسلة الثنائية ، ومؤشرًا إلى مؤشر char ، وقاعدة نظام الأرقام كوسائط. أخيرًا ، يقوم بطباعة النتيجة إلى وحدة التحكم باستخدام printf ().

انتاج |

خاتمة

كما نعلم ، فإن البشر على دراية بالأرقام العشرية مقارنة بالأرقام الثنائية حيث يصعب إدارتها. من السهل إجراء العمليات الحسابية بالأرقام العشرية لأنها في الأساس 10 ومعالجتها أسرع مقارنة بالأرقام الثنائية ، وبالتالي يتم تحويل الأرقام الثنائية إلى أرقام عشرية. أوضحت النظرة العامة أعلاه تحويل الأرقام الثنائية إلى أرقام عشرية باستخدام برنامج C مع وظائف محددة من قبل المستخدم ومضمنة سترتول () وظيفة.