#1  
قديم 08-21-2013, 10:03 AM
abanoub fayez abanoub fayez غير متواجد حالياً
عضو جديد
 
تاريخ التسجيل: May 2013
المشاركات: 30
افتراضي تطبيقات وبرامج الحاسوب

تطبيقات وبرامج الحاسوب



الحاسوب هو جهاز الكتروني قابل للبرمجة وله القدرة على استقبال البيانات ومعالجتها وإخراج نتائج عملية المعالجة، ويؤدي الحاسوب دوره هذا بتناغم تام بين المعدات (Hardware) و البرمجيات (Software). ولقد تطرقنا في مقالات سابقة إلى مكونات الحاسوب المادية، فضلا عن الأجهزة المرتبطة به. وفي هذا المقال سيتم التركيز على جانب البرمجيات Software وهي تطبيقات مبرمجة بلغات الحاسوب المختلفة وتمثل حلقة الاتصال بين الجهاز والمستخدم، و بدون البرمجيات يتعذر على المستخدم العادي التعامل مع أجهزة الكمبيوتر. ولقد تطورت البرمجيات بشكل متزامن تقريبا مع المعدات لتزيد من فاعلية وانتشار استخدام الحاسوب الشخصي في مختلف المجالات. ويمكن النظر إلى جانب البرمجيات في الحاسوب على انه يتكون من لغات البرمجة، ونظم التشغيل والبرامج والتطبيقات.
لغات البرمجة Programming Languages
لفهم لغات البرمجة بشكل دقيق، يجب أولا فهم آلية عمل الحاسوب، فالحاسوب هو جهاز الكتروني يعتمد في عمله على العناصر الالكترونية (ترانزستورات) التي تطورت إلى (الدوائر الالكترونية المتكاملة)، وهي شرائح رقيقة من مادة السيلكون تحتوى على الآلاف من الترانزستورات. اذا التواصل مع الحاسوب لا يمكن ان يتم إلا من خلال هذه العناصر، وبالتالي من الصعب توجيه الحاسوب باستخدام لغة لا يفهمها إي كانت هذه اللغة. ان منطق عمل الحاسوب يعتمد على وجود شحنة كهربائية في العنصر الالكتروني او عدم وجودها. تصور هذه الكرات تمثل مجموعة من العناصر الالكترونية.

الكرات باللون الأسود تمثل العناصر التي تحتوي على شحنة كهربائية، اما التي باللون الأبيض فهي عناصر خالية من الشحنة. وعلى تعقيد جهاز الحاسوب إلا انه لا يفهم او يستجيب إلا لهذه الحالة فقط وجود او عدم وجود شحنة في احد العناصر (On، Off). وعليه حتى نتمكن من التحاور مع الحاسوب، لابد من وجود لغة مشتركة يفهمها الحاسوب، ويفهمها الإنسان في الوقت نفسه. وهذه اللغة وجدت ضالتها في نظام عددي يعرف بالنظام الثنائي Binary System. وهو نظام عددي يتكون من رقمين فقط هما (0،1) وهذا النظام يحاكي تماما مبدأ عمل الحاسوب، إذ اعتبر العدد(1) هو حالة وجود شحنة (On)، و العدد (0) هو حالة عدم وجود شحنة (Off). عودة إلى مثال الكرات :

1 0 1 0 1 1 0 1
عندها يمكن القول إننا حصلنا على طريقة للتحاور مع الحاسوب التي ستمكننا من توجيهه لتنفيذ مختلف العمليات. بوجود لغة مشتركة أطلق عليها لغة الآلة. ولقد تطورت لغات البرمجة مع تطور الحاسوب، لتستجيب إلى متطلبات المبرمجين والمستخدمين لتنفيذ برامج متنوعة تخدم المستفيدين، ويمكن تتبع مراحل تطور لغات البرمجة على الوجه الأتي:
1. لغة الآلة
لغة الآلة Machine Language هي مجموعة من الشفرات التي تتكون من سلسلة الأعداد في النظام الثنائي، وسميت بهذا الاسم كونها اقرب إلى فهم الآلة منها إلى الإنسان. ولقد استخدمت شفرة مقاربة لمفهوم لغة الآلة في أجهزة التلغراف إذ كانت عملية إرسال واستقبال الرسائل تعتمد على (.) النقطة و (-) إذ كانت النغمة القصيرة تعني نقطة والنغمة الطويلة تعني (-) . لكن عمل الحاسوب أكثر تعقيدا من التلغراف، لذا تطلب الأمر تصميم شفرة قياسية للغة الآلة، للتعبير عن الرموز والحروف والأرقام، التي من خلالها يمكن تنفيذ وتوجيه عمل الحاسوب، لحل مشكلة معينة. ويمكن القول، ان لغة الآلة هي اللغة الوحيدة، التي يمكن استخدامها مباشرة في الحاسوب، أي أن الشخص الآمر-المبرمج- يلقي الأوامر إلى المأمور-الحاسوب- بلغة الطرف الثاني-اللغة الثنائية- وهذا يقتضي بطبيعة الحال أن يتعلم الشخص الاول، لغة الآلة أي أن يتقن المبرمج لغة 0، 1. إذن يتكون البرنامج المكتوب بلغة الآلة، من أرقام ثنائية تعبر عن التعليمات ومواقع الذاكرة والبيانات الضرورية لحل مشكلة معينة، لذلك فإن أي لغة آلة تتكون من مجموعات0،1 ولكن طريقة تنظيمها تختلف من نوع حاسوب إلى آخر فمثلا تعليمة لغة الآلة التي تقوم بجمع 8 إلى القيمة الموجودة في المراكم تكون على الشكل التالي:
10100000 00001000
8 DDA
2. لغات التجميع
لغة التجميع Assembly Languages هي لغة تستخدم اختصارات معبرة من اللغة الانجليزية لتعبر بها عن العمليات الأولية التي يقوم بها الحاسوب مثل إضافة Add وحفظ Store وطرح Sub وغيرها، و لأن هذه اللغة تستخدم كلمات مختصرة من اللغة الانجليزية فإنها تحتاج محولا لكي يحولها إلى لغة الآلة وهو ما يسمى المجمع Assembler الذي يقوم بتحويل لغة التجميع إلى لغة الآلة، كي يفهمها الحاسوب ويستطيع تنفيذها ، وبالرغم من تقليل المجهود على عاتق المبرمج للقيام بعمليات البرمجة، إلا أنه ما زالت توجد مشقه عند حل أبسط المسائل، لأن ذلك يتطلب معرفه وكتابه العديد من التعليمات. وهذا ما دفع المبرمجين للتفكير في لغات أخرى تقلل المجهود الكبير اللازم لكتابه التعليمات، فكانت لغات البرمجة ذات المستوى العالي .
3. لغات المستوى العالي
لغات المستوى العالي High Level Languages هي تلك اللغات التي تكتب باستخدام بعض الكلمات الإنجليزية العادية في معانيها، حيث يقوم كل أمر منها بتنفيذ العديد من الواجبات، وهذه اللغات كسابقتها تحتاج إلى مترجمات Compilers التي تقوم بتحويل التعليمات والأوامر إلى لغة الآلة ليفهمها الحاسوب. وتستخدم هذه اللغات العلاقات والعوامل الرياضية المتعارف عليها . مثال على ذلك Sum = A + B + C
وتعد هذه اللغات سهله ومرغوبة من وجهه نظر المبرمجين بالمقارنة بلغات التجميع ولغة الآلة، وذلك لسهوله كتابتها وفهمها. وإمكانية حل المشاكل باستخدامها ، ومن أمثله هذه اللغات الباسكال Pascal الفورتران Fortran البيسك Basic الخ... ومن المعلوم أن عمليه تحويل البرنامج من لغة ذات مستوى عال إلى لغة الآلة تستهلك وقتا، لذلك تم تطوير نسخ من لغات المستوى العالي، تستخدم برنامج مفسر Interpreter والذي يقوم بترجمة الكود سطرا سطرا أثناء التنفيذ. وبالرغم من أن البرامج المترجمة الناتجة من عمليه الترجمة باستخدام المترجم Compiler تكون أسرع في التنفيذ، عن البرامج التي تستخدم المفسر Interpreter إلا أنه يفضل وجود نسخه من اللغات تعمل باستخدام المفسر، وذلك لسهوله التغيير والحذف والإضافة والتصحيح، وبعد الانتهاء من كل التعديلات والوصول إلى نسخه نهائيه، فأنه يتم استخدام المترجم لترجمة البرنامج وانتاج نسخه تنفيذيه حتى تكون أسرع في التنفيذ عند تشغيلها على الحاسوب.
رد مع اقتباس
إضافة رد

أدوات الموضوع
انواع عرض الموضوع

ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG]متاحة
كود HTML معطلة




الساعة الآن 10:34 AM