كيف تستعمل السبملي علي برامج masm

اذهب الى الأسفل

كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:50

كيف تستعمل السبملي علي برامج masm

بسم الله الرحمن الرحيم

كيفية تشغيل برامج الأسمبلي على البرنامج masm
السلام عليكم ورحمة الله وبركاته ,,,
يشتكي الكثيرون من عدم معرفتهم بكيفية ترجمة برامج الاسمبلي
عن طريق البرنامج masm و في هذا الدرس نوضح كيفية التعامل معه
أولاً حمل برنامج masm على جهازك .. يمكنك تحميله من هذا الموقع:
http://www.c4arab.com/downloads/masm.zip

حجم البرنامج 104 كيلو بايت فقط.
ستجد داخله برنامجين هما masm و link .
أنشئ مجلد في السي (:C) مباشره باسم masm ثم ضع في هذا المجلد هذين البرنامجين ( masm و link ).
ثم أكتب هذا البرنامج في محرر النوت باد (Not Pad) الذي يقوم بطاعة كلمة hello فقط:
.model small
.stack 100h
.data

msg db 'hello$'

.code

main proc far
mov ax, @data
mov ds, ax
lea dx, msg
mov ah, 9
int 21h


mov ah, 1
int 21h

mov ah, 4ch
int 21h

main endp
end main


و احفظه باسم test.asm في الملجد masm الموجود في السي (:C)
الآن إذهب إلى موجه الدوس عن طريق:
start -> programs -> Accessories -> Command Prompt



ثم إذهب إلى السي (:C) ثم ادخل إلى المجلد masm الموجود به عن طريق:
C:>cdmasm
أو كما هو مبين في الصورة:



الآن أنت في داخل المجلد masm و سيكون أمر الموجه هو:
C:>masm>
كما هو مبين في الصورة:


الآن أكتب masm ثم أسم الملف كما يلي:
C:>masm>masm FILE_NAME;
حيث أن الـ FILE_NAME هو اسم ملفك الذي تريد ترجمته و لا تنسى الفاصلة المنقوطة.
ثم سيظهر لك الأخطاء و عددها و أماكنها إن وجدت أو سيظهر رسالة بعدم وجود أخطاء إذا لم توجد
كما هو مبين في الصورة:

الآن قمنا بعملية الترجمة فقط و لكن بقي علينا جزء مهم و هو جزء الربط (link)
و سنقوم بهذا الجزء كما يلي:
أكتب في سطر الموجه:
C:>masm>link FILE_NAME;
حيث أن الـ FILE_NAME هو اسم ملفك الذي تريد ترجمته و لا تنسى الفاصلة المنقوطة.
ثم سيقوم بعملية الربط و تظهر شاشة كهذه:

الآن إنتهينا من عملية ترجمة و ربط الملف و الملف التنفيذي exe جاهز الآن, و نستطيع الحصول عليه
بكتابة اسم ملفنا الأصلي في الموجه كما يلي:
C:>masm>FILE_NAME
كما تبين لنا الصورة:

و ستظهر لنا النتيجة كتابة hello .
إذاً مبروك فقد كتبت و ترجمت و نفذت أول برنامج أسمبلي لك.

و لو ذهبنا إلى الملجد masm لوجدنا فيها ملف test.OBJ و test.exe قد تَكّون نتيجة الترجمة .
الآن بإستطاعتك كتابت و تنفيذ أي برنامج أسمبلي بالطريقة
السابقة عن طريق masm .
برمجة أسمبلي ممتعة...
krtoosh
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:51

انشاء قاعدة بيانات1
إنشاء قاعدة بيانات

قمنا بالدرس السابق بشرح كيفية إنشاء الجدول و نتطرق اليوم لموضوع أكثر عمقا و هو
قاعدة البيانات


كما أن الحقل هو وحدة الجدول فإن الجدول ذاته هو وحدة قاعدة البيانات و يمكن إنشاء
و تعديل قاعدة البيانات


باستخدام نافذة الأوامر كما ترى














و نرى بنافذة الأوامر بالسطر الأول أمر إنشاء قاعدة بيانات باسم phone
بينما في السطر التالي أمر تعديل قاعدة
البيانات

يمكن بالطبع إنشاء قاعدة البيانات بالطريقة التقليدية لاستخدام النوافذ
من شريط القوائم file -> new أو
من شريط الأدوات أختر
new
ومن ثم حدد
database












و عندما نضغط new
file
يتاح لنا تسمية و حفظ قاعدة
البيانات ثم تفتح نافذة التصميم و معها نافذة الأدوات الخاصة بها و التي تحتوي



من اليمين إلى اليسار اتصالات - تعديل الإجراءات
المخزنة - استعراض جدول – تعديل جدول – تحرير العلاقات داخل قاعدة البيانات – تحرير
العلاقات و الاتصالات مع قواعد بيانات أخرى – حذف جدول – إضافة جدول – إنشاء جدول
جديد



يمكنك الآن إنشاء جدول جديد بنفس الطريقة التي استخدمناها في الدرس السابق أو
يمكنك استخدام إضافة جدول من نافذة أدوات تصميم القاعدة بعد إضافة الجدول حدده
فتجد جميع رموز الأدوات تم تفعيلها



اضغط تعديل جدول يمكننا حاليا تعديل خصائص عناصر الجدول و على سبيل
المثال أريد أن يرى المستخدم الاسم الأول بدلا من
firstname لذا
الجأ إلى خاصية يعرفها معظم المبرمجين و هي خاصية
caption



لكتابة الاسم الذي ارغب أن يراه المستخدم و من المهم ملاحظة أن هذه
الخاصية ضمن مجموعة إظهار
display
و التي تضم الصيغة
format و قناع الإدخال input mask مما يزيد التحكم في كيفية و نوعية إدخال البيانات بينما مجموعة Field validation
تمكنك من و ضع قواعد إدخال البيانات و رسائل الخطأ و القيمة الافتراضية كذلك
يمكنك و ضع تعليق خاص بشرح الحقل و غرضه في صندوق "تعليق الحقل
field comment و للعلم فهو من نوعية memo و بالتالي
يمكنك كتابة ما تشاء


إنشاء مفتاح أساسي
بما أننا تطرقنا إلي قاعدة البيانات فلابد أن نتكلم عن المفتاح
الأساسي لأنه الوسيلة الأساسية لربط الجداول
داخل قاعدة البيانات و يتميز
المفتاح الأساسي بخاصيتين أنه قابل للفهرسة و غير قابل للتكرار ولذلك و بفرض قيامنا
بجعل حقل
ID
مفتاح أساسي فأننا نحدده من نافذة تعديل الجدول و من خاصية
index
نحدد طبيعة الفهرسة تصاعدي أم تنازلي



بعد ذلك و من التبويب التالي indexes فهارس
تحت بند
type للحقل أختر مفتاح PRIMARY


و
بعد الموافقة سيتم حفظ التغييرات
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:52

انشاء قاعدة بيانات2


بسم الله الرحمن الرحيم
إنشاء النموذج

النموذج في قاعدة البيانات هو شكل لطريقة إدخال البيانات أو استخلاص النتائج عن طريق الواجهة التي يصممها المبرمج تمكن المستخدم العادي من التعامل مع قاعدة البيانات بشكل أيسر
طرق الإنشاء:

  • من مدير المشروع أختر نموذج form ثم new
  • من قائمة file اختر new ثم form ثم حدد new file
  • باستخدام العبارة CREATE FORM في نافذة الأوامر
يحتوي النموذج على كثير من أدوات التحكم ولا تختلف طريقة التصميم كثيرا عن البيسك المرئي ولكي نستوعب الفكرة نكتب في نافذة الأوامر الأمر التالي CREATE FORM لنري بيئة التصميم
نلاحظ نافذة الخصائص من جهة اليمين و هي تمكننا من التحكم في أدق خصائص العناصر كما نرى الأدوات بجوار النموذج في نافذة التصميم و يمكن تلخيص و ظائف الأدوات كالتالي



لنبدأ الآن إنشاء النموذج و بأسهل الطرق باستخدام المعالج
بالطبع سيكون العمل مكملا لما سبق و لاحظ عدم تغييرك لمكان المشروع حتى لا يحدث أخطاء
و الآن من شريط الأدوات أضغط رمز نموذج المبين بالرسم التالي
ستظهر نافذة معالج الاختيار و التي تسأل هل المطلوب

  • أنشاء نموذج من جدول واحد
  • إنشاء نموذج من عدة جداول
و حيث أننا قمنا بإنشاء جدول واحد سنختار نموذج من جدول واحد أي الاختيار الأول
في النافذة التالية الخطوة الأولى و التي تسمح بتحديد الحقول المطلوبة لعمل النموذج و لتحديد الحقول يجب أولا تحديد الجدول الذي يحتوي هذه الحقول و لذلك نضغط على زر الاستعراض و قد ميزته باللون الأحمر
في نافذة الاستعراض حدد نوعية الملفات ب database و حدد قاعدة البيانات المنشأة سابقا
الخطوة الأولى حتى اللحظة لم تكتمل فعلى اليسار الجدول وفي الوسط الحقول المناحة و علينا الاختيار منهم و لاختيار جميع الحقول اضغط السهم المزدوج و لاختيار حقل حدد الحقل ثم أضغط السهم المفرد و لحذف حقل استخدم الأسهم السفلى
لقد قمت باختيار جميع الحقول ثم ضغطت next للانتقال للخطوة الثانية لاختيار شكل النموذج و نوعية الأزرار و يمكنك التجربة كما تشاء أو حدد اختياراتك كما بالصورة
عندما تضغط next تجد نفسك أمام نافذة ترتيب السجلات حيث تحدد الحقل ثم نوعية الترتيب تصاعدي أم تنازلي ثم تضيفه لقائمة الحقول المختارة و لا يمكنك تجاوز ثلاث حقول
و بعد التالي تجد النافذة الأخيرة و التي تطلب عنوان للنموذج ثم اختيار ما بين

  • حفظ النموذج
  • حفظ و تشغيل النموذج
  • حفظ النموذج و تعديل النموذج
اضغط preview و ستظهر النافذة التالية يمكنك العودة للمعالج بالضغط على Return to Wizard!
اختر حفظ و تشغيل حدد مسار قاعدة بياناتك لحفظ النموذج معها
بعد ضغط حفظ تجد النموذج في شكله التالي حيث لا يوجد سجلات بعد و لإضافة سجل اضغط add
عندما تضع بياناتك عليك ملاحظة

  • الانتقال باستخدام tab أو المشيرة بين الحقول
  • التاريخ يكتب الشهر أولا ثم اليوم ثم العام كما هو موضح
  • اضغط حفظ save لحفظ سجلك الأول أو revert للرجوع عن إضافة سجل
بنفس الطريقة أضف سجل ثاني حتى يمكنك استكشاف إمكانية النموذج الذي بين يديك

avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:53

انشاء الجدول
دروس قاعدة بيانات FoxPro 6
الدرس الأول " إنشاء جدول "
تقديم :
FOXPRO هو أحد برامج البرمجة المصاحبة لبرنامج Microsoft Visual Studio 6.0 يساعدك على تصميم قواعد البيانات الخاصة بك و هو بالقوة الكافية ليعوضك عن Microsoft Access حال عدم توفره بجهازك و كل ما تحتاجه خلافا للبرنامج Microsoft Visual FoxPro 6.0 هو عقل يقظ لماح
لنبدأ على بركة الله


ما نراه هو الصفحة الأساسية للعمل و هي بطبيعة الحال لا تختلف عن أي نافذة فنجد شريط العنوان يليه شريط القوائم ثم شريط الأدوات و لتعلم وظيفة كل رمز فقط عليك وضع المؤشر فوقه لثواني و سوف نستخدم أول رمز من الشمال و جميعنا تقريبا يعرفه انه رمز الصفحة البيضاء new
ستظهر أمامك نافذة جديدة و من عنوان الدرس نعلم إننا سنستخدم الاختيار table ثم نضغط new file

ستطلب منك النافذة التالية اسم و مكان للجدول المراد إنشاؤه و لك حرية الاختيار بالطبع عن نفسي فقد قمت بعمل مجلد خاص و أسميت الجدول بالدرس 1

بعد ضغط حفظ save تظهر نافذة تكوين الجدول

و كما نرى فالحقول fields لها مواصفات تمكنك من تحديد البيانات المدخلة و لنبدأ بأول حقل
نجد مستطيل تحت تبويب name و هو يطلب أسم للحقل أكتب id لاحظ أن اسم الحقل يستخدمه المبرمج في تكوين العلاقات و الاستعلامات و التقارير بينما يعني للمستخدم عنوان المعلومة المراد إدخالها و لذا نستخدم النماذج مستخدمين عناوين سهلة للمستخدم ف id يمكننا ان نكتبها مسلسل بمعنى رقم السجل
اضغط tab من لوحة المفاتيح تنتقل إلى خانة تبويب type النوع و منها


  1. character حرفي و تقبل جميع ما يمكن إدخاله من لوحة المفاتيح حروف و أرقام و رموز
  2. numeric رقمي يشمل الأرقام مشتملة الإشارة و العلامة العشرية ان وجدت
  3. date تاريخ و دائما طوله 8 خانات و يأخذ الشكل mm/dd/yy أي ببدء بالشهر ثم اليوم
  4. logical منطقي و يستخدم مع النوعية التي تتطلب اختيارا من اثنين فقط مثل نعم أو لا
  5. memo ملاحظات و هي تمكنك من إدخال بيانات كبيرة الحجم لا تسمح بها النوعيات الأخرى
بالطبع هناك نوعيات أخرى ومن المفترض انك على علم بالمتغيرات و أنواعها الآن اختر numeric ثم اضغط tab تنتقل إلي تبويب width العرض و هو تبويب تحديد عدد الحروف أو الأرقام المدخلة اكتب 3
التبويبات التالية و لن نستخدمها الآن هي


  1. decimal عدد الأرقام العشرية
  2. index فهرس بمعنى هل نرغب في فهرسة الحقل من عدمه
  3. null لتحديد قبول قيمة صفرية من عدمه
اكتب الحقول بالمواصفات كما تظهر أمامك في الصورة التالية

يمكننا القول بان البيانات الموضحة تصلح كبيانات أساسية أو دفتر عناوين الخ لاحظ أن am_call قصدت به إمكانية الاتصال المبكر بينما o_phone تليفون المكتب و h_phone تليفون المنزل الآن اضغط OK

هل تريد إدخال بيانات الآن إذا أجبت لا سيتم حفظ الجدول اضغط yes لتظهر نافذة إدخال البيانات التالية

أغلق نافذة إدخال البيانات * لاحظ ان الملف ما زال مفتوحا بالرغم من إغلاق نافذة البيانات انظر شريط المعلومات * الآن نفرض أننا نريد تعديل الجدول هناك عدة طرق سأذكرها في أماكنها
من شريط القوائم View -> Table Designer

تظهر نافذة التعديل و قد مرت بك مسبقا أثناء إنشاء الجدول

يمكنك التعديل و الحذف و الإضافة و إعادة ترتيب الحقول


  1. لتعديل اسم حدده بالنقر ثم اكتب الاسم الجديد
  2. لحذف حقل حدده بالضغط على يسار الاسم فيظهر سهمين كما بحقل id بالصورة عاليه ثم اضغط delete
  3. لإضافة حقل حدد الحقل الذي سيليه ثم اضغط insert
  4. لنقل حقل من مكانه انتقل بالمؤشر إلي يسار اسم الحقل حيث يتحول إلى سهم له رأسين اضغط الزر الأيسر للفأرة و اسحب إلى المكان الجديد ثم حرر الزر الأيسر للفأرة
بعد التعديل اضغط ok و سيتم سؤالك عن رغبتك في حفظ التغييرات .
نريد الآن إغلاق الملف و لذا سنذهب إلى شريط القوائم ثم Windows -> Data Session

تظهر أمامنا النافذة التالية

و بالطبع تحتوي على العديد من الوظائف فالخصائص properties تمكننا من التعديل modify كما بالنافذة التالية
أما لأننا نريد غلق الملف فإننا ببساطة سنضغط close
نافذة الأوامر command
إنها النافذة القابعة بأعلى يمين الشاشة منذ بدء البرنامج تقوم بترجمة ما تفعله أو تنفذ الأوامر التي تدخلها أنت بها فعندما أنشأت جدول كان الآمر المستخدم create lesson1 و عندما قمت بالتعديل استخدمت الأمر modify structure و عندما أغلقت النافذة استخدمت الأمر use نعم بهذه البساطة و بمراقبتك لهذه النافذة تتعلم الكثير إن يشاء الله
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:53

الشبكة العصبة

الشبكات العصبية (Neural Network)
كيف يتعلم الإنسان؟!
تنتشر في جسم الإنسان ملايين الخلايا العصبية والتي تتفرع بدورها إلى الملايين من الزوائد العصبية، حيث تنقل هذه الخلايا العصبية الإحساس و ردّات الفعل من و إلى العقل البشري بواسطة الحبل الشوكي.
ومن خلال هذه الخلايا العصبية يتم تخزين المعرفة عن العالم الخارجي في العقل البشري، وذلك عن طريق ضبط الأوزان داخل هذه الخلايا.
لو أخذنا مثال بسيط و يحدث دائماً دون أن نشعر بذلك في حياتنا، وهو تعلّم الطفل للتعرف على صور الحيوانات في السنوات الأولى من عمره.
فمثلاً لو عرضنا على طفل في الثالثة من عمره صورة لبقرة ثم عرضنا صورة لقط ثم صورة لدجاجة مع ذكر اسم كل حيوان أمامه. و كررنا هذه الصور لعدة مرات. بعد ذلك تأتي مرحلة الاختبار ويتم فيها عرض الصور السابقة مع صور حيوانات أخرى لنقل صورة عصفور بحيث يطلب منه معرفة اسم الحيوان الظاهر في الصورة، نلاحظ أن الطفل سيتعرف على صور الحيوانات التي تعلمها أثناء مرحلة التعليم ولكن عند عرض صورة العصفور فإن الطفل سيتعرف على الصورة على أساس أنها صورة الدجاجة!
وذلك لأن صورة العصفور مشابهة في كثير من الخصائص الخارجية لصورة الدجاجة والتي تم تخزينها في عقله. ولكن مع تنويع الصور وتكرارها سيتعلم الطفل أكثر في كل مرة.
فكّر العلماء في طريقة يستطيعون من خلالها محاكاة هذه العملية التي تحدث في العقل البشري، وتوصلوا إلى علم الشبكات العصبية Neural Network والذي يندرج تحت علوم الذكاء الصناعي، بحيث يجعلون من أجهزة الحاسوب أجهزة ذكية، بإمكانها أن تكتسب المعرفة بنفس الطريقة التي يكتسب بها الإنسان المعرفة، وهي طريقة ضبط الأوزان أثناء التعلم.
الشبكات العصبية الاصطناعية:
هو جهاز مصمم لمحاكاة الطريقة التي يؤدي بها العقل البشري مهمة معينة، وهو عبارة عن معالج ضخم موزع على التوازي، ومكون من وحدات معالجة بسيطة، بحيث يقوم بتخزين المعرفة العملية ليجعلها متاحة للمستخدم وذلك عن طريق ضبط الأوزان.
طرق المحاكاة:
هناك عدة طرق لمحاكاة الطريقة التي يتعلم بها الإنسان وهي:


  • عن طريق الورقة والقلم، بحيث يتم إدخال الخصائص كمدخلات ثم القيام بعمليات حسابية معينة تضبط فيها الأوزان لتعطي النتيجة المرغوبة وهذه الطريقة غير عملية وتستخدم عادة لتوضيح المفهوم الذي تعمل به الشبكة العصبية فقط.
  • عن طريق عدة أشخاص مع كل شخص منهم آلة حسابية بسيطة، بحيث يمثل كل شخص منهم خلية عصبية تقوم بعملية ضبط الأوزان. وهذه الطريقة غير فعالة لنفس الأسباب السابقة.
  • عن طريق عدد كبير جداً من أجهز الحاسوب المتصلة ببعضها البعض، بحيث يمثل كل جهاز منها خلية عصبية تقوم بعمليات حسابية بسيطة لضبط الأوزان، وهذه الطريقة غير فعالة نظراً للعدد الكبير جداً من الأجهزة والتي تكون في الغالب مكلفة جداً.
  • عن طريق برنامج يحاكي هذه العملية، وهذه هي الطريقة الأمثل و الأسهل والأقل تكلفة علاوة على كونها الأكثر انتشارا، وهي التي سنعتمدها إن شاء الله في هذا الدرس لبناء شبكة عصبية.
التطبيقات التي تستخدم الشبكات العصبية:
الشبكات العصبية أعطت حلولاً ذات كفاءة عالية للكثير من التطبيقات في العديد من المجالات نذكر منها:


  • تمييز الأنماط والتعرف على الصور.
  • القدرة على التعرف على الصور المشوهة.
  • إكمال الصور التي فقدت جزء منها، مثل الصور المرسلة بواسطة الأقمار الصناعية.
  • عمليات التصنيف إلى عدد من الفئات. مثل تصنيف الحيوانات إلى أليفة و مفترسة.
لو أخذنا مثلاً على عملية التعرف على الكائنات الحية، و قمنا ببرمجة برنامج بالطريقة التقليدية للتعرف على هذه الحيوانات فإن ذلك سيكون صعب للغاية فضلاً عن كونه محدود القدرات. فالتطبيقات التقليدية تمر بعدة مراحل تتطلب في معضمها وجود الإنسان، و تتطلب برنامج ضخم للتعرف على كل حيوان على حدة!
بينما في الشبكات العصبية فإنه الشبكة تتبع نفس الطريقة التي يتعلم بها الإنسان وذلك عن طريق عرض صور الحيوانات وضبط الأوزان حتى يتم تخزين المعرفة بصورة صحيحة في ذاكرة الحاسوب ومع تكرار الصور و تنوعها تتعلم الشبكة وتصبح قادرة على إعطاء إجابات صحيحة، وكل ذلك لا يتطلب كتابة برنامج ضخم كما في التطبيقات التقليدية.
مكونات الشبكة العصبية:
كما أن للإنسان وحدات إدخال توصله بالعالم الخارجي وهي حواسه الخمس، فكذلك الشبكات العصبية تحتاج لوحدات إدخال، ووحدات معالجة يتم فيها عمليات حسابية تضبط بها الأوزان و تحصل من خلالها على ردة الفعل المناسبة لكل مدخل من المدخلات للشبكة.
فوحدات الإدخال تكوّن طبقة تسمى طبقة المدخلات، و وحدات المعالجة تكوّن طبقة المعالجة وهي التي تخرج نواتج الشبكة. وبين كل طبقة من هذه الطبقات هناك طبقة من الوصلات البينية التي تربط كل طبقة بالطبقة التي تليها والتي يتم ضبط الأوزان الخاصة بكل وصلة بينية، وتحتوي الشبكة على طبقة واحدة فقط من وحدات الإدخال ولكنها قد تحتوي على أكثر من طبقة من طبقات المعالجة.
طرق تعليم شبكة عصبية:
تتعلم الشبكة عن طريق إعطائها مجموعة من الأمثلة، التي يجب أن تكون مختارة بعناية، لأن ذلك سيساهم في سرعة تعلم الشبكة. ومجموعة الأمثلة هذه تسمى فئة التدريب.
وتنقسم طرق تعليم شبكة عصبية إلى قسمين حسب فئة التدريب التي تعرض على الشبكة. وهما:


  • التعليم بواسطة معلمSupervised Learning:
في هذه الطريقة تكون فئة التدريب التي تعرض على الشبكة عبارة عن زوجين من المتجهات، متجه المدخلات وهو عبارة عن القيم المدخلة للشبكة، ومتجه المخرجات وهو عبارة عن القيم التي يجب أن تخرجها الشبكة.
مثال:
Input0 1 0 1 0 0 0 1)
Output0 1 1)


  • التعليم بدون معلم Unsupervised learning:
في هذه الطريقة تكون فئة التدريب عبارة عن متجه المدخلات فقط دون عرض المخرجات على الشبكة.
في الدرس التالي سنعرف على أول شبكة تتعلم بواسطة معلم وهي Perceptron Network
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:55

الشبكة العصبة

الشبكات العصبية (Neural Network)


كيف يتعلم الإنسان؟!
تنتشر في جسم الإنسان ملايين الخلايا العصبية والتي تتفرع بدورها إلى الملايين من الزوائد العصبية، حيث تنقل هذه الخلايا العصبية الإحساس و ردّات الفعل من و إلى العقل البشري بواسطة الحبل الشوكي.
ومن خلال هذه الخلايا العصبية يتم تخزين المعرفة عن العالم الخارجي في العقل البشري، وذلك عن طريق ضبط الأوزان داخل هذه الخلايا.
لو أخذنا مثال بسيط و يحدث دائماً دون أن نشعر بذلك في حياتنا، وهو تعلّم الطفل للتعرف على صور الحيوانات في السنوات الأولى من عمره.
فمثلاً لو عرضنا على طفل في الثالثة من عمره صورة لبقرة ثم عرضنا صورة لقط ثم صورة لدجاجة مع ذكر اسم كل حيوان أمامه. و كررنا هذه الصور لعدة مرات. بعد ذلك تأتي مرحلة الاختبار ويتم فيها عرض الصور السابقة مع صور حيوانات أخرى لنقل صورة عصفور بحيث يطلب منه معرفة اسم الحيوان الظاهر في الصورة، نلاحظ أن الطفل سيتعرف على صور الحيوانات التي تعلمها أثناء مرحلة التعليم ولكن عند عرض صورة العصفور فإن الطفل سيتعرف على الصورة على أساس أنها صورة الدجاجة!
وذلك لأن صورة العصفور مشابهة في كثير من الخصائص الخارجية لصورة الدجاجة والتي تم تخزينها في عقله. ولكن مع تنويع الصور وتكرارها سيتعلم الطفل أكثر في كل مرة.
فكّر العلماء في طريقة يستطيعون من خلالها محاكاة هذه العملية التي تحدث في العقل البشري، وتوصلوا إلى علم الشبكات العصبية Neural Network والذي يندرج تحت علوم الذكاء الصناعي، بحيث يجعلون من أجهزة الحاسوب أجهزة ذكية، بإمكانها أن تكتسب المعرفة بنفس الطريقة التي يكتسب بها الإنسان المعرفة، وهي طريقة ضبط الأوزان أثناء التعلم.
الشبكات العصبية الاصطناعية:
هو جهاز مصمم لمحاكاة الطريقة التي يؤدي بها العقل البشري مهمة معينة، وهو عبارة عن معالج ضخم موزع على التوازي، ومكون من وحدات معالجة بسيطة، بحيث يقوم بتخزين المعرفة العملية ليجعلها متاحة للمستخدم وذلك عن طريق ضبط الأوزان.
طرق المحاكاة:
هناك عدة طرق لمحاكاة الطريقة التي يتعلم بها الإنسان وهي:




  • عن طريق الورقة والقلم، بحيث يتم إدخال الخصائص كمدخلات ثم القيام بعمليات حسابية معينة تضبط فيها الأوزان لتعطي النتيجة المرغوبة وهذه الطريقة غير عملية وتستخدم عادة لتوضيح المفهوم الذي تعمل به الشبكة العصبية فقط.


  • عن طريق عدة أشخاص مع كل شخص منهم آلة حسابية بسيطة، بحيث يمثل كل شخص منهم خلية عصبية تقوم بعملية ضبط الأوزان. وهذه الطريقة غير فعالة لنفس الأسباب السابقة.


  • عن طريق عدد كبير جداً من أجهز الحاسوب المتصلة ببعضها البعض، بحيث يمثل كل جهاز منها خلية عصبية تقوم بعمليات حسابية بسيطة لضبط الأوزان، وهذه الطريقة غير فعالة نظراً للعدد الكبير جداً من الأجهزة والتي تكون في الغالب مكلفة جداً.


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


التطبيقات التي تستخدم الشبكات العصبية:
الشبكات العصبية أعطت حلولاً ذات كفاءة عالية للكثير من التطبيقات في العديد من المجالات نذكر منها:




  • تمييز الأنماط والتعرف على الصور.


  • القدرة على التعرف على الصور المشوهة.


  • إكمال الصور التي فقدت جزء منها، مثل الصور المرسلة بواسطة الأقمار الصناعية.


  • عمليات التصنيف إلى عدد من الفئات. مثل تصنيف الحيوانات إلى أليفة و مفترسة.


لو أخذنا مثلاً على عملية التعرف على الكائنات الحية، و قمنا ببرمجة برنامج بالطريقة التقليدية للتعرف على هذه الحيوانات فإن ذلك سيكون صعب للغاية فضلاً عن كونه محدود القدرات. فالتطبيقات التقليدية تمر بعدة مراحل تتطلب في معضمها وجود الإنسان، و تتطلب برنامج ضخم للتعرف على كل حيوان على حدة!
بينما في الشبكات العصبية فإنه الشبكة تتبع نفس الطريقة التي يتعلم بها الإنسان وذلك عن طريق عرض صور الحيوانات وضبط الأوزان حتى يتم تخزين المعرفة بصورة صحيحة في ذاكرة الحاسوب ومع تكرار الصور و تنوعها تتعلم الشبكة وتصبح قادرة على إعطاء إجابات صحيحة، وكل ذلك لا يتطلب كتابة برنامج ضخم كما في التطبيقات التقليدية.
مكونات الشبكة العصبية:




كما أن للإنسان وحدات إدخال توصله بالعالم الخارجي وهي حواسه الخمس، فكذلك الشبكات العصبية تحتاج لوحدات إدخال، ووحدات معالجة يتم فيها عمليات حسابية تضبط بها الأوزان و تحصل من خلالها على ردة الفعل المناسبة لكل مدخل من المدخلات للشبكة.
فوحدات الإدخال تكوّن طبقة تسمى طبقة المدخلات، و وحدات المعالجة تكوّن طبقة المعالجة وهي التي تخرج نواتج الشبكة. وبين كل طبقة من هذه الطبقات هناك طبقة من الوصلات البينية التي تربط كل طبقة بالطبقة التي تليها والتي يتم ضبط الأوزان الخاصة بكل وصلة بينية، وتحتوي الشبكة على طبقة واحدة فقط من وحدات الإدخال ولكنها قد تحتوي على أكثر من طبقة من طبقات المعالجة.
طرق تعليم شبكة عصبية:
تتعلم الشبكة عن طريق إعطائها مجموعة من الأمثلة، التي يجب أن تكون مختارة بعناية، لأن ذلك سيساهم في سرعة تعلم الشبكة. ومجموعة الأمثلة هذه تسمى فئة التدريب.
وتنقسم طرق تعليم شبكة عصبية إلى قسمين حسب فئة التدريب التي تعرض على الشبكة. وهما:




  • التعليم بواسطة معلمSupervised Learning:


في هذه الطريقة تكون فئة التدريب التي تعرض على الشبكة عبارة عن زوجين من المتجهات، متجه المدخلات وهو عبارة عن القيم المدخلة للشبكة، ومتجه المخرجات وهو عبارة عن القيم التي يجب أن تخرجها الشبكة.
مثال:



Input0 1 0 1 0 0 0 1)
Output0 1 1)





  • التعليم بدون معلم Unsupervised learning:


في هذه الطريقة تكون فئة التدريب عبارة عن متجه المدخلات فقط دون عرض المخرجات على الشبكة.
في الدرس التالي سنعرف على أول شبكة تتعلم بواسطة معلم وهي Perceptron Network
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:55

الشبكة العصبة2
الشبكة العصبية Perceptron
(Perceptron Network)
Perceptron Neural Network:
بعد أن تعرفنا على ماهية الشبكات العصبية وما هو الهدف منها سنتعرف على أحد الطرق التي يتم فيها بناء شبكة عصبية، وهي Perceptron.
الـ Perceptron Network تستخدم في التطبيقات التي تحتاج إلى تصنيف الأنماط Pattern Classification إلى فئتين فقط. أي التي يمكن فصل الأنماط بها بيانياً بواسطة خط مستقيم وتسمى هذه النوعية من الأنماط: الأنماط القابلة للفصل خطياً Linear separability patterns.
وتتكون هذه الشبكة من طبقة المدخلات وطبقة واحدة أو طبقتين من طبقة المعالجة بحيث لا تزيد طبقة المعالجة عن طبقتين، بالإضافة إلى أنه يتم ضبط الأوزان لطبقة واحدة فقط من طبقات الوصلات البينية التي تربط بين الطبقات السابقة، لتبقى الطبقة الأخرى (إن وجدت) ثابتة الأوزان. و هذه الشبكة تتعلم عن طريق معلم.
ولهذه الشبكة مميزات وعيوب، من مميزاتها أن بناء برنامج لها سهل جداً.
ومن عيوبها:


  • أنها لا تستطيع أن تصنف الأنماط لأكثر من فئتين.
  • عدد طبقات المعالجة فيها محدد بطبقة واحدة أو طبقتين فقط.
  • ضبط أوزان الوصلات البينية فيها يتم على طبقة واحدة فقط من طبقات الوصلات البينية.
يمر تعليم هذه الشبكات العصبية بمرحلتين وهما:

  • مرحلة التعليم
  • مرحلة الاختبار
مرحلة التعليم :
هي المرحلة التي يتم فيها ضبط أوزان الوصلات البينية حتى تصل إلى أوزان قادرة على إعطاء إجابات صحيحة.
ويتم ذلك عن طريق قيام وحدات المعالجة بثلاث عمليات رئيسية:
عملية جمع الأوزان Weighted Sum:
تقوم كل وحدة معالجة بعملية الجمع لكل وزن مدخل لها و الملحق بالوصلة البينية التي تربط بينها وبين الوحدة الموجودة في الطبقة التي تسبقها، مضروباً في القيمة الخارجة من تلك الوحدة، وهو على الصيغة:
Sj=∑ai wji
حيث wjiهو الوزن الملحق بالوصلة البينية التي تربط وحدة المعالجة j بالوحدة i الموجودة في الطبقة التي تسبقها.
و aiهي القيمة الخارجة من الوحدة i
و Sj هي ناتج عملية الجمع لكل وحدة معالجة j.
عملية التحويل Transformation:
تتم هذه العملية في الطبقة الأخيرة من طبقات المعالجة حيث يتم تحويل ناتج عملية الجمع المذكور في العملية السابقة إلى أحد القيم التي يفترض أن تكون ضمن نواتج الشبكة المرغوب بها. فمثلاً لو كانت الشبكة ستتعلم كيف تصنف الأعداد إلى فردي وزوجي، على أن تعطي كل عدد فردي القيمة 0 و كل عدد زوجي القيمة 1.
فإن قيمة Sj وهو ناتج عملية الجمع لن يعطي القيمة 0 أو 1 غالباً، لذا لا بد من تحويل هذا الناتج إلى أحد هذه القيمتين، وذلك عن طريق قاعدة التحويل والتي يحددها المبرمج. فمثلاً تكون القاعدة كالتالي:
if Sj>0 then Xj=1
if Sj<=0 then Xj=0
حيث Xj هي القيمة الخارجة من وحدة المعالجة j
عملية ضبط أوزان الشبكة weights adjustment:
بعد إتمام عملية التحويل يتم مقارنة الناتج الذي تعطيه الشبكة مع الناتج الصحيح الذي يفترض أن تعطيه الشبكة وذلك عن طريقة طرح الناتج الهدف(الصحيح) من ناتج الشبكة، فإذا كان ناتج الطرح مساوياً للصفر فهذا يعني أن الشبكة أخرجت ناتجاً صحيح، أما إن كان غير ذلك فالشبكة تحتاج لضبط أوزانها، وذلك من خلال قاعدة التعليم learning rule:
wjinew= wjiold+C(tj-Xj)ai
حيث wjinew هي قيمة الوزن الجديد الملحق بالوصلة البينية بين الوحدة j والوحدة i
و wjiold هي قيمة الوزن القديم الملحق بالوصلة البينية بين الوحدة j والوحدة i
و C هو معدل التعلم learning rate وهي قيمة ثابتة عادة ما تكون قيمة أقل من 1
و tj هي القيمة الهدف للشبكة
و Xj هي القيمة التي أنتجتها الشبكة
و ai هي المخرج من الوحدة i
إذا لم تفهم كل هذه العمليات من خلال القراءة، فهذا أمر طبيعي، سنحتاج أولاً لتطبيق عملية المحاكاة بواسطة الورقة والقلم أولاً حتى نفهم عملية التعليم ثم نصمم برنامج مناسب لها كما سنرى في الدرس القادم.
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف Admin في الخميس مايو 08 2008, 15:59

تطبق مثال علي الشبكة

تطبيق مثال عملي على شبكة Perceptron
المثال:

لنفرض أن لدينا شبكة من النوع Perceptron ونريد تعليمها كيف تطبق الدالة المنطقية AND، و هذه الدالة تعطي القيمة 1 إذا كانت كلاً من قيمة المدخلين مساوية للواحد، وصفر في الحالات الأخرى.
وإليك مجموعة الأمثلة التالية لتدريب الشبكة:
I1
I2
t
0.0
0.0
1.0
1.0
0.0
1.0
0.0
1.0
0
0
0
1

حيث I1 و I2 ترمز للمدخلات، بينما t ترمز للمخرج أو النتيجة الهدف (المرغوب بها).
وقاعدة التحويل هي:
if Sj>0 then Xj=1
if Sj<=0 then Xj=0
وسنفرض معدل التعلم بالقيمة C=0.5.
لتمثيل هذه الشبكة فإننا نحتاج لوحدتي إدخال لأن هناك مدخلين، ووحدة معالجة واحدة لأن هناك مخرج واحد كالتالي:
من الرسم نجد أن هناك طبقة واحدة من الوصلات البينية وسنفرض لها قيم أوزان مختلفة على أن تكون في المدى من -0.5 إلى 0.5
w11=0.1
w12=0.3
سنبدأ الآن بالمدخل الأول ونطبق أول عميلة وهي عملية الجمع:
S= 0.1 * 0.0 + 0.3 * 0.0
S=0.0
وحيث أن وحدة المعالجة هذه هي آخر وحدة معالجة فيجب تطبيق قاعدة التحويل:
S=0.0<=0.0
إذاً X=0
وبعد ذلك سنطبق عملية ضبط الأوزان، ولكن أولاً نتحقق مما إذا كان هناك حاجة لضبط الأوزان أم لا:
الناتج الهدف للمدخل الأول هو 0 والناتج الذي أخرجته الشبكة هو 0 وحاصل طرح هذين الناتجين هو 0، وهذا يدل على أن أوزان الشبكة ليست بحاجة إلى تعديل.
لننتقل إلى المدخل الثاني مستخدمين نفس الأوزان السابقة لأنه لم يتم تعديلها لعدم الحاجة لذلك:
نبدأ من جديد بتطبيق عملية الجمع:
Sj=∑ai wji
S= 0.1 * 0.0 + 0.3 * 1.0
S=0.3
ثم قاعدة التحويل:

if Sj>0 then Xj=1
if Sj<=0 then Xj=0
S=0.3>0.0
X=1
وبعد ذلك عملية ضبط الأوزان:
الناتج الهدف للمدخل الثاني هو 0 أيضاً، والناتج الذي توصلت له الشبكة هو 1 بطرح ناتج الشبكة من الناتج الهدف يعطي القيمة -1
وهي غير مساوية للصفر لذا لا بد من ضبط جميع أوزان الشبكة.
wjinew= wjiold+C(tj-Xj)ai
w11new=0.1+ 0.5 * (-1)* 0.0
w11new=0.1

w12new=0.3+ 0.5 * (-1)* 1.0
w12new= -0.2
وبذلك نكون قد انتهينا من المدخل الثاني لنبدأ في الثالث مستخدمين الأوزان بعد تعديلها، متبعين نفس الخطوات السابقة:
قاعدة الجمع:
S= 0.1 * 1.0 +(- 0.2) * 0.0
S=0.1
قاعدة التحويل:
S=0.1>0.0
X=1
بعد ذلك عملية ضبط الأوزان:
الناتج الهدف للمدخل الثاني هو 0 أيضاً، والناتج الذي توصلت له الشبكة هو 1 بطرح ناتج الشبكة من الناتج الهدف يعطي القيمة -1
وهي غير مساوية للصفر لذا لا بد من ضبط جميع أوزان الشبكة.
عملية ضبط الأوزان:
w11new=0.1+ 0.5 * (-1)* 1.0
w11new= -0.4

w12new= -0.2+ 0.5 * (-1)* 0.0
w12new= -0.2
ننتقل للمدخل الرابع والأخير مستخدمين الأوزان بعد التعديل:
عملية الجمع:
S= -0.4 * 1.0 +(- 0.2) * 1.0
S= -0.6
قاعدة التحويل:
S= -0.6<0.0
X=0
بعد ذلك عملية ضبط الأوزان:
الناتج الهدف للمدخل الثاني هو 1 أيضاً، والناتج الذي توصلت له الشبكة هو 0 بطرح ناتج الشبكة من الناتج الهدف يعطي القيمة 1
وهي غير مساوية للصفر لذا لا بد من ضبط جميع أوزان الشبكة.
عملية ضبط الأوزان:
w11new= -0.4+ 0.5 * (1)* 1.0
w11new= 0.1

w12new= -0.2+ 0.5 * (1)* 1.0
w12new= 0.3
وبهذا نكون قد انتهينا من عرض جميع الأمثلة (متجهات من الأنماط) على الشبكة وعرض جميع الأمثلة على الشبكة تسمى محاولة، ففي هذه المحاولة أعطت الشبكة نتيجة واحدة فقط صحيحة من أصل 4 نتائج، أي أن الشبكة لم تتعلم بعد وتحتاج لمحاولات أخرى بنفس الطريقة، حتى تستطيع إعطاء إجابات صحيحة لكل الأمثلة، حينها نقول أن الشبكة تعلمت، ويتبقى فقط اختبارها.

مرحلة الاختبار:
اختبار الشبكة مشابه تماماً لعملية التعليم إلا أن الشبكة في هذه المرحلة لا تضبط أوزانها، وإنما فقط تقوم بعمليتي الجمع والتحويل ومقارنة الناتج الذي تنتجه الشبكة بالناتج الهدف. حيث يتم عرض فئة اختبار على الشبكة وتحتوي هذه الفئة على مجموعة من المدخلات والمخرجات المصاحبة لكل مدخل. ويفضل أن تكون فئة الاختبار مختلفة عن فئة التدريب.
فإذا استطاعت الشبكة اجتياز الاختبار وإعطاء إجابات صحيحة، يكون تعليم الشبكة ناتج، وتصبح الشبكة جاهزة للاستخدام.
أسباب عدم تعلم الشبكة:
قد يتم تصميم الشبكة وتدريبها، ولكنها بالنهاية تفشل! و أسباب فشلها في الواقع متعددة منها:

  • نوعية الشبكة لا تناسب التطبيق الذي تم تدريبها عليه، وهذا يستلزم اختيار شبكة أخرى.
  • عدد وحدات المعالجة غير مناسب.
  • الأوزان التي تبدأ بها الشبكة غير مناسبة.
  • معدل التعلم غير مناسب.
  • فئة التدريب لم يتم اختيارها بعناية.
  • قاعدة التحويل غير مناسبة.
برنامج يحاكي الـ Perceptron Network:
الصور التالية تعرض لقطات لبرنامج تم تصميمه بلغة #C ليحاكي عمل هذه الشبكة، وتم تطبيق المثال السابق عليه:

  • بداية البرنامج:


  • يتم اختيار ملف يحتوي على فئة التدريب، ويتم تحديد قاعدة التحويل و المدى الذي سيتم تحديد قيم عشوائية منه لتكون القيم الابتدائية للأوزان:


  • بعد ذلك ننتقل للخطوة الثانية وهي تدريب الشبكة، ويتم ذلك عن طريق تطبيق العمليات السابقة برمجياً على فئة التدريب ولعدة محاولات حتى تتعلم الشبكة:


  • ثم يأتي دور اختبار الشبكة، حيث تحدد فئة الاختبار، وبالنهاية سيتم عرض نتيجة الاختبار وهنا الشبكة قد تعلمت واستطاعت أن تعطي إجابات صحيحة لكل فئة الاختبار:

بإمكانك تحميل البرنامج من هنا:
لتحميل البرنامج
لتحميل الشيفرة المصدرية للبرنامج
public void PerceptronAlg() {
int testPerformance;

string text;




testPerformance=NetPerformance();
avatar
Admin
المدير العام
المدير العام

ذكر
عدد الرسائل : 1884
العمر : 45
الموقع : http://hesham.forumalgerie.net
العمل/الترفيه : مهندس كمبيوتر
المزاج : ممتاز
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 459
تاريخ التسجيل : 13/02/2008

بطاقة الشخصية
شطا نت:

معاينة صفحة البيانات الشخصي للعضو http://hesham.forumalgerie.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: كيف تستعمل السبملي علي برامج masm

مُساهمة من طرف البرىء في الجمعة مايو 09 2008, 02:53

avatar
البرىء
المدير العام
المدير العام

ذكر
عدد الرسائل : 1368
الدولة :
المزاج :
الوظيفة :
الاوسمة :
نقاط : 0
تاريخ التسجيل : 24/04/2008

معاينة صفحة البيانات الشخصي للعضو http://www.alsahfyalgree.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى