• 0
MAE

الاسمبلي و السي و مرونتها

سؤال

السلام عليكم كلنا نعرف ان لغة السي قوية لعدة اشياء من اهمها قابلة للحمل اي يمكن ايتعمالها على معظم الاجهزة

اليس كل اللغات يتم ترجمتها الي لغة الآلة و لغة الاسمبلي = لغة الآلة كما نعرف و الفرق ان لغة الآلة 0 و 1 و لغة الاسمبلي من كلمات مفهومة

اذا يقال ان لغة السي يمكنها الانتقال و الاسمبلي لا يمكنها السؤال لماذا؟؟؟؟؟؟؟؟؟؟؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

20 إجابة على هذا السؤال .

  • 0

برأيي ،

نعم لغة السي يتم ترجمتها الى لغة الاسمبلي...لكن الى أي لغة اسمبلي ؟ الى لغة الاسمبلي الخاصة بالجهاز الذي تريد نقلها اليه...

ما اقصده هو ان لغة الاسمبلي (او لغة الآلة ) ليست واحدة بل تتختلف بحسب معمارية الجهاز...وبالتالي

فعندما يكون لديك برنامج سي و تريد تشغيله على الجهاز A مثلا ، فتترجمه باستخدام مترجم لغة الى لغة اسمبلي من النوع A وبالمثل عندما تريد تشغيله على جهاز B فتترجمه باستخدام مترجم لغة آخر الى لغة اسمبلي من النوع B

أما لغة الاسمبلي A فلا اعرف اذا كان من الممكن تحويلها الى لغة اسمبلي B بحيث تعمل على جالهاز الآخر أم لا.

طبعا لا يوجد شيء اسمه اسمبلي A او B هذا للتوضيح فقط :)

تم تعديل بواسطه allko
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اللسلام عليكم

ارى من اجابتك ان مترجم السي هو الذي يحولها الى لغة الآلة للجهاز اذا فمن الممكن ان اي لغة يتم عملها مراعاة ان المترجم يترجم الكود الى لغة آلة مختلف و لا اعتقد ان هذا هو الجواب

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

لم افهم كلامك...

المترجم يترجم البرنامج الى لغة الة...اين المشكلة؟

تم تعديل بواسطه allko
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

ياسيدى لغة الاسمبلى : مجموعة تعليمات MOV او LDS او REP هى نفسها تعليمات المعالج

اولا انظر الى المعالجات الاتية ومحتوياتهم وكيف ستتعامل السى مع كل منهم

المعالج الاول : لجهاز الحاسب PC

التعليمة MOV

التعليمة Add

المنصة  الاولى : 
MOV= 0101 0100
ADD= 0101 0001

****************************

المعالج الثانى للجوال : معالج nokia _phone

التعليمة MOV

التعليمة ADD

المنصة  الثانية :
MOV=0000 0011
ADD=0000 1100

كل من المعالج الاول والمعالج الثانى تعتبر معالج ولكن الاختلاف فى طريقة التعامل مع البيانات

كيف تحول السى البرنامج الى اكتر من منصة عمل ؟

انظر الى التعليمة MOV وADD فى المنصة الاولى والمنصة الثانية

الان لديك مترجم للغة C عند الترجمة ينتج ملف تنفيذى قابل لعمل على اجهزة الحاسب PC واجهزة التليفون المحمول ( الجوال ) nokia_phone

الان تقوم انت باختيار نوع التطبيق فى البداية كمثل ما يحدث فى الفيجوال سى ++

ثم تقوم بكتابة الكود الخاص ببرنامجك

** فى حالة اختيارك لبرنامج ينفذ على الجوال NOKIA

يتم اخذ الكود وتحويله الى التعليمة MOV و ADD فى المنصة الثانية

** فى حالة اختيارك لبرنامج يعمل على الحاسب PC

يتم تحويل الكود التعليمة MOV او ADD فى المنصة الاولى

اذا كان المترجم لا يملك القدرة على الترجمة لمعالج NOKIA

لغة C او السى ++ او الجافا

ليست لغات سحرية

تذكر انه ممكن ان تتشابه التعليمات داخل اكتر من معالج من انواع مختلفة ولكن تختلف فى طريقة تعريفها للمعالج كما فى المنصة الاولى والثانية فكل معالج يفهم التعليمة MOV بطريقة مختلفة ولكن ممكن انها تكون بتادى نفس الخدمة

هذا هو السبب فى ان السى برمجها تنتقل الى اى منصة ولكن لابد ان تكون متعرفة عليها

الدليل على ذالك

هو انظر الى مترجمات السى تحت الدوس consol ومترجمات السى تحت الويندوز

اكتب برنامج يحتوى على تعليمات API الخاصة بنظام XP داخل مترجم يعمل بنمط CONSOL

لا يستطيع ترجمة البرنامج وبناء ملف تنفيذى لانه غير موهل للتعامل مع دوال API

يعنى لغة البرمجة لا تفعل شىء بدون متكون متعرفة عليه

************************

حاول ان تقراء طريف بناء الملفات وتحليل البرامج فى الذاكرة واسلوب عمل المعالج سواء PC او NOKIA او MOTORALA

والسلام عليكم ورحمة الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

كلام كله خطاء وتحليل غير موفق...

اولاً بالنسبة للتعليمات فهي مختلفة من جهاز لاخر فمثلاً التعليمة link فى معالجات الموتورولا لا يوجد ما يشببهها فى معالجات إنتل هذه تعليمة خاصة بمعالجات موتورولا 6800 فما فوق..

كذلك تحديد حجم المتغير يتم من خلال التعليمة فى معالجات موتورولا اما فى انتل فيتم من خلال المتغير نفسة على سبيل المثال فى الموتورلا التعليمة mov تكتب move.l إذا كنت تريد إستخدام متعير من نوع 32 اما لاستخدام البايت فتكتب move.b وهاكذا...

معالجات sparcs والتى تستخدم فى اليونكس تعتمد على تقنية تسمى risc بينما معالجات انتل تعتمد على تقنية مختلفة تماماً تسمى sisc يعنى البنية المعمارية للحاسوب تختلف تماماً من معالج لاخر..

ولا اعرف ما دخل الجافا فى الموضوع ... فالجافا تعتبر VM واى برنامج يكتب بالجافا يمكن تشغيلة فى اى جهاز لان معمارية الجافا VM لا علاقة لها بمعمارية الحاسوب وتعتبر اداة وصل بين البرنامج والمعالج او تستطيع ان تقول عنها انها مترجم يترجم البرنامج قبل تنفيذه بالمعالج, وهذا هو سبب بطئ لغة الجافا..

نعود للسؤال المطروح...

بالنسبة للغة السى فيمكن ترجمتها بمترجم خاص لكل جهاز إذا لم تكن تحتوى على تعليمات اسمبلي خاصة بجهاز معين, يعنى لغة السى يمكن تحويلها للغة اسمبلى خاص بجهاز معين إذا لم يكن بداخلها تعليمات خاصة, اما لغة الاسمبلي فلا يمكن لانها تحتوى على تعليمات خاصة بمعالج معين...

بالنسبة لمنصة التشغيل وندوز او دوس او لينكس فالاسمبلى لا يختلف وهناك مترجمات مثل HLA التى تستطيع ترجمة برامج الاسمبلى لكل منهم, المشكلة تكمن فى إستخدام مكتبات خاصة, إذا استخدمت مكتبة مثل GDI32.dll فلن تستطيع تشغيل البرنامج سوى على الوندوز وإذا استخدمت مقاطعات الدوس فلن تستطيع ترجمة البرنامج بحيث يعمل على اللينكس والوندوز وإذا إستخدمت Systemcall فلن تستطيع استخدام البرنامج فى الدوس والوندوز..

للمرة الاخيرة يا حمادة الرجاء عدم المشاركة إذا كنت غير مضطلع, المشكلة انك تطرح معلومات مغلوطة واحياناً السكوت من ذهب ...

والسلام عليكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخ احمد غريب

ياريت بلاش تجيبلى النقطة انا بتكلم بشكل عام لتحوضيح الفكرة

لو انت شايف ان كلامى خطاء اسمح لى اقولك انك محتاج ان تتأنى فى قرائتك قليلا

وبلاش تستفزنى كتير لانك خنقنى اوى

كلامى كان من المفهوم العام

اقراء اللى انا كاتبته وقارنه بالمشاركات السابقة حتلقيه متشابه

وللا سف الكلام اللى فى المشاركة السابقة (2) انا وضحته فقط ولا قولت شىء زائد عنه

قارن :

بين هذا

نعم لغة السي يتم ترجمتها الى لغة الاسمبلي...لكن الى أي لغة اسمبلي ؟ الى لغة الاسمبلي الخاصة بالجهاز الذي تريد نقلها اليه...

ما اقصده هو ان لغة الاسمبلي (او لغة الآلة ) ليست واحدة بل تتختلف بحسب معمارية الجهاز...وبالتالي

فعندما يكون لديك برنامج سي و تريد تشغيله على الجهاز A مثلا ، فتترجمه باستخدام مترجم لغة الى لغة اسمبلي من النوع A وبالمثل عندما تريد تشغيله على جهاز B فتترجمه باستخدام مترجم لغة آخر الى لغة اسمبلي من النوع B

وهذا

كل من المعالج الاول والمعالج الثانى تعتبر معالج ولكن الاختلاف فى طريقة التعامل مع البيانات

كيف تحول السى البرنامج الى اكتر من منصة عمل ؟

انظر الى التعليمة MOV وADD فى المنصة الاولى والمنصة الثانية

الان لديك مترجم للغة C عند الترجمة ينتج ملف تنفيذى قابل لعمل على اجهزة الحاسب PC واجهزة التليفون المحمول ( الجوال ) nokia_phone

الان تقوم انت باختيار نوع التطبيق فى البداية كمثل ما يحدث فى الفيجوال سى ++

ثم تقوم بكتابة الكود الخاص ببرنامجك

** فى حالة اختيارك لبرنامج ينفذ على الجوال NOKIA

يتم اخذ الكود وتحويله الى التعليمة MOV و ADD فى المنصة الثانية

** فى حالة اختيارك لبرنامج يعمل على الحاسب PC

يتم تحويل الكود التعليمة MOV او ADD فى المنصة الاولى

وايضا قارن بين هذه العبارة والاخرى

اكتب برنامج يحتوى على تعليمات API الخاصة بنظام XP داخل مترجم يعمل بنمط CONSOL

لا يستطيع ترجمة البرنامج وبناء ملف تنفيذى لانه غير موهل للتعامل مع دوال API

وهذه

بالنسبة لمنصة التشغيل وندوز او دوس او لينكس فالاسمبلى لا يختلف وهناك مترجمات مثل HLA التى تستطيع ترجمة برامج الاسمبلى لكل منهم, المشكلة تكمن فى إستخدام مكتبات خاصة, إذا استخدمت مكتبة مثل GDI32.dll فلن تستطيع تشغيل البرنامج سوى على الوندوز وإذا استخدمت مقاطعات الدوس فلن تستطيع ترجمة البرنامج بحيث يعمل على اللينكس والوندوز وإذا إستخدمت Systemcall فلن تستطيع استخدام البرنامج فى الدوس والوندوز..

يوجد فارق كبير انك تستطيع استخدام الدوال فى الاسمبلى وفرق فى طريقة بناء المترجم للملف التنفيذى راجع معلوماتك

الكلام متشابه ولكن مع التوضيح فقط ولا اكتر

باين عليك منامتش كويس

تم تعديل بواسطه Nokia_2006
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طيب يا حمادة خلينا نشوف إنتا كاتب إيه واوريك خطائك عشان تبطل تتفلسف علينا, واحثبت لك مين إلي مش فاهم حاجة....

1.

اذا كان المترجم لا يملك القدرة على الترجمة لمعالج NOKIA

لغة C او السى ++ او الجافا

ليست لغات سحرية

كلام غير مفهوم, يعنى إيه إذا كان المترجم لا يملك القدرة على الترجمة لمعالج NOKIA, عن اى مترجم تتحدث؟؟ هل هو مترجم السى بلس بلس الذى تصدرة مايكرسفت ام انه مترجم خاص بمنصة الNOKIA?

2.

تذكر انه ممكن ان تتشابه التعليمات داخل اكتر من معالج من انواع مختلفة ولكن تختلف فى طريقة تعريفها للمعالج كما فى المنصة الاولى والثانية فكل معالج يفهم التعليمة MOV بطريقة مختلفة ولكن ممكن انها تكون بتادى نفس الخدمة

فى معالجات لا تعرف الامر mov وتستخدم load وليس من الضروري ان تتشابه التعليمات بل بالعكس فى اغلب المعالجات هناك العديد من الاوامر المختلفة وهناك اوامر متشابهه فى الاسم ولكنها مختلفة فى الوظيفة يعنى معلومة خاطئة 100 بال 100.

هو انظر الى مترجمات السى تحت الدوس consol ومترجمات السى تحت الويندوز

اكتب برنامج يحتوى على تعليمات API الخاصة بنظام XP داخل مترجم يعمل بنمط CONSOL

لا يستطيع ترجمة البرنامج وبناء ملف تنفيذى لانه غير موهل للتعامل مع دوال API

من قال ان الconsole لا يستطيع ترجمة البرنامج وبنائه إذا كان يحتوى على اوامر API, وهل الconsole هو الذى يترجم ام الكمبايلر..

على كل حال دعنى اعطيك معلومة جديدة : الconsole جزء من الوندوز واى برنامج فى الconsole يستطيع ان يستخدم دوال الAPI, هناك بعض الدوال الخاصة بواجهة المستخدم تعمل فى الوندوز والتى لا تستطيع إستخدامها فى الconsole اما باقي مجتبات الAPI فتستطيع إستخدامها بدون اى مشاكل, يعنى معلومة خاطئة 100 %...

حاول ان تقراء طريف بناء الملفات وتحليل البرامج فى الذاكرة واسلوب عمل المعالج سواء PC او NOKIA او MOTORALA

وياريت تفهمنا ما دخل بنية الملفات التنفيذية فى الترجمة التى تحدث للمنصات المختلفة...

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طيب وانا بكتب مشاركتي قمت انت بتحرير مشاركتك بس مش مشكلة المهم اوريك الاخطاء تاني لعلك تفهم

اولاً الاخ allko بيتكلم عن الفرق بين المترجمات وإنتا بتشرح تعلمات الاسمبلي وكتبت كلام لا علاقة له بمداخلة الاخ allko وعايز تفهمنا إنه شرح لمداخلته..

ثانياً انا باتكلم عن نظام DOS وإنتا بتتكلم عن الConsole الظاهر إنك مش عارف الفرق بينهم .. الاولى وإلي هى نظام DOS يعتبر نظام تشغيل اما الconsole فهو برنامج وجزء بسيط من نظام الوندوز.

والGDI32.dll مكتبة تستخدم فى نظام الوندوز للرسم على واجهة المستخدم فهمت ؟؟؟؟؟؟؟؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بنية الملفات مهمة فى عملية التحويل

لان النظام هو اول من يتعرف على الملف

فاذا كان الملف لا يدعم تعريف PE وما يتبعه من Section table

فسيعمل داخل الكونسل

ولكن معلومتك الجديدة حول الكونسل انا عارف انى استطيع استخدام تعليمات التحكم بالذاكرة والاتصال بين البرامج من مكتبة API ولكن كنت بالفعل اتحدث عن بناء برنامج كامل متكامل ذات واجهة ويندوز

لا يمكن تنفيذه داخل كونسل

يعنى معلومات متقاربة وهذا ما كتبته وليست معلومات جديدة منك

بالنسبة لجملة ان المعالج ليس لديه القدرة على الترجمة للمعالج NOKIA

كنت اقصد بها

انه اذا كان المترجم لا يدعم تعليمات هذا المعالج فلا يستطيع ان ينتقل تنفيذ البرنامج الى NOKIA

لانه مش حيتعرف عليه اصلا

اولا انت تتحدث عن انى اقول ان التعليمة MOV مشتركة ولديها وظائف

انظر فى اعلى المشاركة اننى تخيلت وجود معالج PC ومعالج nokia وليس الكلام عن كيفية التعامل معه

على العموم

كلامى صح بس ممكن اكون كتبتها باسلوب غير واضح ولكن هذا يعنى انى مش فاهم

ثانيا هذا مايثبت انك تقراء وانت متسرع لتكتشف وجود اى غلطة

الاختلاف فى الرىء لا يفسد للصداقة قضية

ولو سمحت اقراء المشاركة بهدوء وحتكتشف انه كلامى منطقى

واقراء وانت تعلم انى بتحدث من منطلق عام وليس لى دخل باسلوب او طريقة عمل المعالج او هل التعليمة دى موجودة فيه اولا

بالطبع اعرف ان نظام الدوس هو نظام اما الكونسل هو مجرد برنامج داخل ويندوز لانه من الطبيعنى انه النظام دوس مش حيشتغل جو الويندوز لكن ممكن ان نستخدم خدماته داخل البرامج

اما الكونسل وهو برنامج عادى خاص بالنظام مثل DEBUG او Command Prompt فهو يعمل فى بيئة الكونسل ايضا

لوسمحت اقراء المشاركة بهدوء اعصاب

تم تعديل بواسطه Nokia_2006
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يا حمادة إنتا شكلك حتجنني, مين قال إن بنية الملف فى الconsole مش PE, فى الوندوز لازم يكون الملف بنظام PE وخلى بالك إن الconsole جزء من الوندوز يعنى اى برنامج تشغلة على الconsole لازم يكون من نوع PE وإلا مش حيشتغل...

وصدقنى انا لا ابحث عن اخطائك ولكن مداخلاتك كلها اخطاء يعنى من الصعب التغاضى عنها, إنتا فعلاً بتحاول تساعد بس المصيبة إنك بتساعد غلط وبتودي الناس فى دهيه لان معلوماتك سطحية..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اخ احمد بجد انت متعرفش ان الملف التنفيذى نوعين

نوع يحمل التوقيع MZ والنوع الاخر يحمل PE

ولكن انا معاك انى لو كتبت ملف تنفيذى لبيئة ويندوز حكتب برضه MZ وباقى هيكله ثم توقيع PE

اا لو كتبت ملف سيعمل للكونسل دون تدخل اى دالة خارجية ساكتفى بهيكل MZ

دون توقيع PE و Section table

على العموم انت مشرف المنتدى لو شايف ان انا مخطىء خلاص انا مخطىء دون اعتراض

ولكن انت برضه بتقراء كلامى ومش عارف تفهم انا عاوز اقول ايه بالظبط

عشان كده بتقول انا بخطاء

وياعم خدها عندك قاعدة راعى سواء التعبير فى مشاركاتى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

شفت إنك مش فاهم حاجة اولاً MZ بتستخدم فى نظام الدوس DOS (وإلي هو نظام تشغيل), مش الوندوز وزى ما قلت لك الconsole هو جز من الوندوز.

طيب ليه برامج الدوس DOS القديمة بتشتغل فى الconsole ؟؟

لان نظام الوندوز يحتوى على ملف system خاص فى المسار C:\windows\system32 هو المسئول عن تشغيل ملفات الدوس القديمة, وإذا تعطل هذا الملف فلن تعمل برامج الدوس القديمة ولكن هذا لا يعنى ان برامج الconsole لن تعمل, اهم شئ فى برامج الconsole هو ان بنية الملف التنفيذى تحتوى على التوقيع PE..

وياريت بلاش تراسلني على الخاص لاني مش برد على الرسائل الخاصة إلى للضرورة وإذا كانت عندك شئ تقولو, خليه على العام..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

اشكرك على حسن اخلاقك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يا جماعه هدو اللعب شويه وخلى بالكم من الكلام

اما الناس تشوف كده يقولو ايه

ارجوا تخفيف لغه الحوار وعدم استخدام كلام تجريح للاخرين

ده حتى بياثر على القارىء

وربنا يهدينا جميعا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
انت ممل

وبرده مش عاوز تفهم

يا حمادة الله يهديك

احترم غيرك لتحترم....

وكررها لك، تريد ان تتعلم، ارفق اخر ملف و تابع الموضوع

http://www.arabteam2000-forum.com/index.ph...98109&st=45

تم تعديل بواسطه محمدعبد العزيز
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

خلصتو خناق ؟؟؟؟

انا كل الي طلبه علوز اعرف لغة السي ازا بيقولو عليها ان من خصائصها انها منتقلة

و ليه الوندوز بيشتغل على معالجات انتل و AMD و نواته مكتوبة بالسي ؟؟؟

بس

مش عاوز PE و لا MZ

و شكرا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
السلام عليكم

خلصتو خناق ؟؟؟؟

انا كل الي طلبه علوز اعرف لغة السي ازا بيقولو عليها ان من خصائصها انها منتقلة

و ليه الوندوز بيشتغل على معالجات انتل و AMD و نواته مكتوبة بالسي ؟؟؟

بس

مش عاوز PE و لا MZ

و شكرا

السلام عليكم و رحمة الله و بركاته

اخي الرد السابق للأخ حمادة

بالنسبة لسؤالك

لغة C لغة Portable غير متعلقة بالمعالج او الجهاز

برمج بها ما تشاء ثم احصل على Compiler متوافق مع الجهاز الذي تريد تحصل على Binary يعمل في ذلك الجهاز...

هذا باختصار و سطجيا فقط، لمزيد من المعلومات تصفح قسم C/C++

بالنسبة Intel و AMD راجع هذا الموضوع

سؤال حول برامج الاسمبلى, استفسار

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم

ما شاء الله

في ناس بتواجه الأستاذ أحمد غريب في مجاله

من ناحية عملية لا يوجد شيء اسمه لغة أسيمبلي ، (ولكنه يطلق مجازا) لأنك في الحقيقة تتعامل مع أسيمبلر وهذا الأسيمبلر يتم إنشاؤه من خلال أي لغة سي أو سي++ ،ولكنه يختلف في أنه غالبا ما يتعامل مع تعليمات المعالج مباشرة ، حيث أنك ستجد بعض المبرمجين بالأسيمبلي يضعون في برنامجهم if else فهل هذا يعني أن هذه الجملة من المعالج ، لا ، هذه في الأسيمبلر لكي يسهل الأمر على المبرمج.

لأنه من الصعب جدا أن تكتب كل شيء بلغة الآلة ، بل يعد جنونا ، لأنها قوالب جاهزة لتريح المبرمجين ، وهذه الفكرة الرئيسية لنشوء لغات البرمجة.

وطبعا ستختلف تعليمات الآلة باختلاف الآلة ، قد يكونوا مشتركين في كثير من التعليمات ، ولكنها تبقى مختلفة.

فلا يمكن أن تشغل برنامج بالسي يعلم على بانتيوم ، على power pc والعكس صحيح

إلا لو أعدت عملية الترجمة.

أشعر أني أكتب كلاما خارج الموضوع

و أشعر بالخجل لأني أكتب هذا في قسم الأستاذ غريب

ولكن ماذا أفعل عندما أجد من يتطاول عليه

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
اللسلام عليكم

ارى من اجابتك ان مترجم السي هو الذي يحولها الى لغة الآلة للجهاز اذا فمن الممكن ان اي لغة يتم عملها مراعاة ان المترجم يترجم الكود الى لغة آلة مختلف و لا اعتقد ان هذا هو الجواب

بلا .. هذا هو الجواب فعلا.

اي لغة برمجة يوجد لها عدة مترجمات على عدة اجهزة مختلفة ستكون برامجها صالحة للانتقال, ما دام البرنامج لا يعتمد في عمله على امور خاصة بجهاز معين, مثل ان لا يحتوي على تعليمات اسمبلي خاصة بجهاز واحد فقط, او ان يعتمد على طريقة عمل الذاكرة في جهاز معين.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .