ماشاء الله تبارك الله ماشاء الله لاقوة الا بالله , اللهم اني اسالك الهدى والتقى والعفاف والغنى
" قُلْ أَعُوذُ بِرَبِّ الْفَلَقِ *مِن شَرِّ مَا خَلَقَ * وَمِن شَرِّ غَاسِقٍ إِذَا وَقَبَ * وَمِن شَرِّ النَّفَّاثَاتِ فِي الْعُقَدِ * وَمِن شَرِّ حَاسِدٍ إِذَا حَسَدَ ". صدق الله العظيم
الساده الاعضاء و زوار منتديات المهندسين العرب الكرام , , مشاهده القنوات الفضائيه بدون كارت مخالف للقوانين والمنتدى للغرض التعليمى فقط
   
Press Here To Hidden Advertise.:: إعلانات منتديات المهندسين العرب لطلب الاعلان عمل موضوع بقسم الشكاوي ::.

 IPTV Reseller

  لطلب الاعلان عمل موضوع بقسم طلبات الاعلانات اسفل المنتدى لطلب الاعلان عمل موضوع بقسم طلبات الاعلانات اسفل المنتدى لطلب الاعلان عمل موضوع بقسم طلبات الاعلانات اسفل المنتدى

Powerd By : Mohandsen.com

العودة   المهندسين العرب > المنتديات الفضائية > قسم لغات البرمجه

إضافة رد
 
أدوات الموضوع انواع عرض الموضوع
  رقم المشاركة : ( 1 )  
قديم 1/4/2008, 11:52 AM
الصورة الرمزية محمدعلى
 
محمدعلى
استاذ فضائيات

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو
  محمدعلى غير متصل  
الملف الشخصي
رقم العضوية : 14801
تاريخ التسجيل : Jun 2006
العمـر :
الـجنـس :
الدولـة :
المشاركـات : 4,143 [+]
آخــر تواجـد : ()
عدد الـنقـاط : 10
قوة التـرشيـح : محمدعلى يستاهل التميز
new فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

بسم الله الرحمن الرحيم
فهم قلب لغه سي :الدرس الأول: مقدمة رموز وعناصر اللغة .

يمكن أن تتسائل لماذا هذه السلسلة من الدروس في ال C لوحدها ؟ مع وجود العمل الكثير مع اللغات الحديثه C++ و C# .
هذه السلسلة من الدروس ليست لمن يريد أن يتعلم مبادء البرمجة الأساسية بل يجب أن يكون ملم بأحد اللغات العليا مثل C++ و C# و MC++ أو Visual Basic
أو Pascal .

C لوحدها هي الأبسط بين عائلة لغات C ومن المهم أن نفهمها ونفهم فلسفتها البسيطه . سي C هي الأساس والقاعده للغات الحديثة C++) , C# , (MC++ , ومعرفة مبادء وخفايا لغه سي C يجعلك تفهم بعمق هذه اللغات الممتده منها أو اللغات التي تعتمد على مكتبات ال C مثل بيسك أو فجوال بيسك .

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

إستخدام السي C هو الطريق الوحيد للحصول على DLLs مكاتب ربط ديناميكة أو exe برامج تنفيذية حرة لا تعتمد على مكاتب أخرى فهي تمول نفسها بنفسها من الكود البرمجي . لكن بالنظر للغات الأخرى مثل C++ و C# وحتى Visual Basic تعتبر لغات تحتاج إلى دعم خارجي عن برنامج المبرمج .. يمكن أن يشعر به أو يستدعيه كما في C++ و C# أو ممكن أن يكون مخفي في المترجم لا يظهر للمبرمج ويتم إضافته للرنامج أو يظل البرنامج متعلق بالمكبة الداعمة .

وهذا ليس موجود في السي C وهنا يمكن أن نتخيل حجم وسرعة البرنامج المبرمج في السي C بالمقارنه مع الغات الأخرى الأعلى في المستوى إذ بإمكانك أن تقوم بعمل برنامج أو مكتبة يكون حجمها 4 أو 5 كيلو بايت وعند تنفيذ نفس العمليه في اللغات الأخرى يكون الناتج ضخم بالمقارنة مع السي C إذ من الممكن أن يبلغ حجم الملف من 50 إلى 200 كيلو بايت وذلك بالنسبة للمشروع .

و يجب أن نتذكر أيضاً أن كمية ما يمكن أن نفعله في أي لغه بغض النظر عن النظام الذي يعمل عليه سوف يكون كبيراً . فمثلاً في نظام التشغيل وندوز ******s يعطينا مجموعه من واجهات البرمجه API تكون أكثر فاعلية في البرمجه مع علاقتها بلغه C أو C++ وهذا يعطيها القوة العظما في العمل و يوجد مثل ذلك في نظام التشغيل Linux .

الهدف من هذه السلسة من الدروس هو أن نعطي فكرة عن ال C من القعر و بتعمق كبير مع مقارنت ما يحدث مع اللغات السهله مثل فجوال بيسك, و كيف كان برنامجك الذي كتبته في لغه C أو C++ أو C# , فإن المبادء الأساسية للغات هي نفسها .

في هذه الدروس سوف نقوم بالتركيز على هذه المبادء الأساسية بتعمق وكيفية إستخدامها .

فبعد ذالك يمكن أن ينطلق المبرمج في أي لغه برمجه أخرى بكل سهوله حتى لو كانت لا تتشابه في الشكل العام لأنا في الأصل سوف تعتمد على لغه C أو C++ ..

فمثلاً في الوقت الحالي لقد تم إصضار إصضارات أخرى من عائلة ال C مثل C++ بإستخدام مكتبة MFC الجاهزه أو C++ أو MC++ بإستخدام مكتبة .Net وحتى في تقنيات أخرى مثلا **** ومكتبتها العظيمة الجاهزه .. لكن الأساس الأصلي واحد وهو ال C .

والأن أبدء في الدرس الأول

الدرس الأول : رموز وعناصر اللغه ..


في هذا الدرس سوف نضع حجر الأساس في تعلم لغه C من خلال النظر في تعريفات العناصر الصغيرة للشيفرة البرمجية Code . الرموز والعناصر التي تحيل أو عطي معناً للأجزاء الوصفية في مصضرالشيفرة البرمجية التي يقوم المترجم بفهمها و إقرار صحتها ثم يقوم بتحويلها للبرنامج.

وهذا يكون من خلال تضمين عناصر في ثوابت وقاعدة اللغه مثل ال keywords , ال Identifiers , ال Constants , ال Literals , ال Predefined Constants .وهنا يقوم المترجب بتقطيع الشيفرة البرمجه إلى هذه العناصر الصغيرة ومن ثم يقوم بإقرار صحت قواعد البرمجه و بعدها يقوم بتحويل هذه العناصر إلى برنامج تنفيذي بلغة الآلة . وهذه الحقيقة موجوده في كل المترجمات سواء كانت متدنية المستوى أو مرتفعة المستوى .

في هذا الدرس سوف نقوم بتغطية هذه العناصر كامله .... إن شاء الله ....

Keywords :



أي الكلمات المحجوزه للغه و ترجمتها الحرفيه الكلمات المفتاحية
وهذه تكون ثابته من أساس للغه ولا يمكن أن نغيرها أو نقوم بتغير
مفعولها في الشيفرة البرمجيه.







Identifiers :



أي المعرفات في اللغه وهذه عبارة عن مجموعه الرموز التي يقوم
المبرمج بتعريفها لكي يستخدمها في برنامجه وهي بذاتها تكون
ممثله من خلال ال Keywords المسموح في لغه C .





ولمعرفة المزيد عن الـkeywords والـ Identifiers له هذه الوصله..

فهم قلب لغه سي:الدرس الثاني : الـ Keywords والـIdentifiers .



Constants :



أي الثوابت وهي عبارة عن الثوابت التي تكون مضمنه مع نفس
اللغه مثل ال Macros وال Constant Variables .





ولكي تعرف المزيد عن الثوابت وأنواعها فلك هذه الوصلة ..

فهم قلب لغه سي:الدرس الثالث: الثوابت Constants و أنواعها


Literals :



المبادء الأساسية لتركيبة النص في ا للغه والثوابت النصية
الصغيرة.





لمعرفة المزيد عن الLiterals لك الوصلة التاليه ..

فهم قلب لغة سي:الدرس الرابع:النظام النصي البسيط في اللغه Literals


Predefined Constants :



وهي عبارة عن الثوابت والموكر التي تكون مضمنه في نفس
اللغه ويتم تنفيذها في أثناء عملة الترجمه .. وهي ليسة
كثيرة الإستخدام في لغه سي .




إذا أردت أن تعرف المزيد عن الـPredefinde Constants فلك الوصلة التالية.

فهم قلب لغة سي:الدرس الخامس:الـ Predefined Constants والـ Macros .

في كل المترجمات يوجد هنالك كثير من الـPredefined Constants أي من الثوابت أو الموكر المضمنه في المترجم من الأصل عند تصميمه , فيمكن أن تتخيلها على أنها ثابت لكنها في أصلها تشبه الإقران وهي دائماً جاهزه و تقول لك إستخدمني .لكن في مترجمات الـ C والـ C++ فإنها لا تحتوي ذلك بصفة مدمجه في محرك الترجم , وهذا ما يعطيها القوة والمرونه فالثوابت في لغه السي تكون بالأصل معرفة في ملف .h يتم عمل #include أو#import له في البرنامج ليتم الإستخدام .

أنظر إلى الجدول التالي لكي ترى بعض هذه الثوابت .




فهم قلب لغه سي:الدرس الثالث: الثوابت Constants و أنواعها

ال Constants أوالثوابت في لغه C تكون إما تحتوي على أرقام Numbers أو حروف أو رموز Characters .وهي هنا إما تكون ثوابت مضمنه في نفس اللغه أي في أساسيات اللغه و القلب المحرك فيها . بينما يمكن في اللغات السهله مثل فجوال بيسك أن يكون الثابت من أي نوع .

في الحقيقة الرمز أو الحرف chars تكون ممثلة على شكل أرقام Numbers , أي النصوص في C أصلاً لا تكون على شكل String نصوص كما في اللغات المشتقة منها أو الغات الأخرى مثل فجوال بيسك ويمكن هنا تمثيل النص من غلال مصفوفة من الرموز المتسلسلة .

وهنا يجب أن لا نخلط بين الثوابت النصية character String و بين ال Literal الثوابت النصية الصغيرة فسيتم شرح ال Literal في الخطوة الثانية من هذا الدرس .

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

ولكن هنا يقوم ال Preprocessor بعمل تبديل لقيمة الثابت قبل البدء في ترجمة البرنامج و يتم تعويض القيمة والمعاملة مع القيمة بدل من الثابت .

هنا يمكن أن نرى عدد من الثوابت في تعريف ال constants ...
فمثلاً نقوم بإستخدام ال Preprocessor التي تسمى #define و بعدها نقوم بتعريف إم للثابت و بعده نضع فراغ و بعد الفراغ نضع القيمة العديدية أو النصية.

سنقوم في الخطوة التالية بشرح الثوابتي الرقيمة Numeric Constants والثوابت النصية Character Constants .

الثوابت الرقمية Numeric Constants

هنا سنقوم بشرح الثوابت الرقمية , وهي في العاده تأخذ القيمة long أو float أو double
ويمكن أن تكون القيمة موجبة أو سالبة , و أيضاً في الثوابت من نوع float يمكن أن نضيف الأس للثابت.

هنالك بعض الحروف توضع مع أسماء الثوابت لكي توضح للمبرمج أن الثابت من نوع رقمي معين مثل الحروف التالي ..

مثلاً إذا وضع الحرف D أو d في بداية الثابت من نوع double فإن الحرف لا يأثر على قيمة الثابت فقط يعطي إشارة للمبرمج أن الثابت عبارة عن قيمة double كما في المثال التالي ..


C++ كود
#define dMyNumber -2253e-2



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

أما مثلاُ إذا عرفنا ثابت كما في الكود التالي ...

C++ كود
#define fnum 325.22



نجد أن المترجم عرفه على أنه من نوع float لأن العدد حقيقي و يمكن للمتغير من نوع float يحتوي القيمة, ويجب أن أذكر هنا أن الحرف f عبارة عن إشارة للمبرمج وليس له علاقة بتعريف النوع .

وهنا أذكر بعض حروف التلميح لنوع الثابت .. مثل


سوف نمسك كل واحده من هذه العناصر على حدا بالتفصيل ثم ننتقل
إلى بناء الهيكل الأساسي للغه سي.
وذلك كما في الدروس القادمة إن شاء الله .
توقيع » محمدعلى

 

مواضيعيردودي
 
من مواضيعي في المنتدي

رد مع اقتباس
قديم 3/4/2008, 02:15 AM   رقم المشاركة : ( 2 )
بدر56
استاذ فضائيات

الصورة الرمزية بدر56

الملف الشخصي
رقم العضوية : 57482
تاريخ التسجيل : Apr 2007
العمـر :
الجنـس :
الدولـة :
المشاركات : 12,256 [+]
آخر تواجـد : ()
عدد النقاط : 10
قوة الترشيـح : بدر56 يستاهل التميز

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو

بدر56 غير متصل

افتراضي رد: فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

مشكووووووور

توقيع » بدر56

 

  رد مع اقتباس
قديم 18/5/2008, 02:29 PM   رقم المشاركة : ( 3 )
eldemery
Guest


الملف الشخصي
رقم العضوية :
تاريخ التسجيل :
العمـر :
الجنـس :
الدولـة :
المشاركات : n/a [+]
آخر تواجـد : ()

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو


افتراضي رد: فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

المهندسين العرب فوق القمه كل الفخر للمهندسين العرب
  رد مع اقتباس
قديم 22/5/2008, 05:06 AM   رقم المشاركة : ( 4 )
علاء نبيل محمد
استاذ فضائيات

الصورة الرمزية علاء نبيل محمد

الملف الشخصي
رقم العضوية : 86051
تاريخ التسجيل : Jan 2008
العمـر : 39
الجنـس :
الدولـة :
المشاركات : 3,686 [+]
آخر تواجـد : ()
عدد النقاط : 469
قوة الترشيـح : علاء نبيل محمد يستاهل التميزعلاء نبيل محمد يستاهل التميزعلاء نبيل محمد يستاهل التميزعلاء نبيل محمد يستاهل التميزعلاء نبيل محمد يستاهل التميز

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو

علاء نبيل محمد غير متصل

افتراضي رد: فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

مشكورررررررررررررررررررررررررر
  رد مع اقتباس
قديم 18/1/2009, 08:20 PM   رقم المشاركة : ( 5 )
عصام احمد حسن 20
نـجـم نـجـوم المهندسين العرب

الصورة الرمزية عصام احمد حسن 20

الملف الشخصي
رقم العضوية : 88612
تاريخ التسجيل : Feb 2008
العمـر : 50
الجنـس :
الدولـة :
المشاركات : 9,497 [+]
آخر تواجـد : ()
عدد النقاط : 2193
قوة الترشيـح : عصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائععصام احمد حسن 20 فعلا رائع

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو

عصام احمد حسن 20 غير متصل

افتراضي رد: فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

مشكور... ......مشكور......................مشكور.........مشك ور
مشكور.............مشكور............ ..مشكور............... مشكور.
مشكور........................مشكور ............................مشكور
مشكور... ................................................. .....مشكور
مشكور. ................................................. ...مشكور
مشكور....................... ........................ مشكور
مشكور.......................................م شكور
مشكور................ ................مشكور
مشكور............. ..........مشكور
مشكور.......... .......مشكور
مشكور.....مشكور
مشكور
  رد مع اقتباس
قديم 1/6/2009, 03:21 PM   رقم المشاركة : ( 6 )
alidaoud
مـهـند س نـشـيط

الصورة الرمزية alidaoud

الملف الشخصي
رقم العضوية : 139356
تاريخ التسجيل : Jan 2009
العمـر : 27
الجنـس :
الدولـة :
المشاركات : 300 [+]
آخر تواجـد : ()
عدد النقاط : 10
قوة الترشيـح : alidaoud يستاهل التميز

 الأوسمة و جوائز
 بينات الاتصال بالعضو
 اخر مواضيع العضو

alidaoud غير متصل

افتراضي رد: فهم قلب لغه سي :الدرس الأول: رموز وعناصر اللغة

مشكورررررررررررررررررررررررررررررر
  رد مع اقتباس
إضافة رد

مواقع النشر (المفضلة)


الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

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

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

الانتقال السريع


الساعة الآن 12:55 AM


Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. TranZ By Almuhajir

Google Adsense Privacy Policy | سياسة الخصوصية لـ جوجل ادسنس

الساده الاعضاء و زوار منتديات المهندسين العرب الكرام , , مشاهده القنوات الفضائيه بدون كارت مخالف للقوانين والمنتدى للغرض التعليمى فقط

RSS RSS 2.0 XML MAP HTML

^-^ جميع آلمشآركآت آلمكتوبهـ تعبّر عن وجهة نظر صآحبهآ ,, ولا تعبّر بأي شكلـ من آلأشكآل عن وجهة نظر إدآرة آلمنتدى ~