| | قائمة التعليمات الجزء الأول | |
| | كاتب الموضوع | رسالة |
---|
المدير AMINE PàTCHIKà
الجنس : تاريخ الميلاد : 25/01/1988 العمر : 36
المدير العام منتديات أمين عبلة الحب :
| موضوع: قائمة التعليمات الجزء الأول الخميس ديسمبر 27, 2012 11:41 am | |
| قائمة التعليمات الجزء الأول الآن وبعد الدرسين السابقين وصلنا إلى قائمة التعليمات التي تحوي 34 تعليمة و سنستعرضها إن شاء الله في درسين: 1. الدرس الاول يحوي 16 تعليمة هي:ADD – AND – CALL – CMP – CMPS – IN – IRET – JMP - J[case] – LEA – LDS - LES - LFS – LGS – LSS – LODS2. وفي الدرس الثاني توجد 18 تعليمة هي:MOV – MOVS - MOVZX - MUL – NOT – OR - OUT - PUSH – POP – REP – RET – SCAS – SHL – SHR – STOS – SUB – TEST - XOR في كل تعليمة:· المجالين "}" و "{" يحددان البارامترات. والتي قد تكون سجّلا أو منطقة ذاكرية أو قيمة فورية (Immediacy)، وهي في الغالب عدد. · اللاحقة "[B أو W أو D]" في نهاية التعليمة تحدد أسلوب معالجة التعليمة. · "B" : تعني هذه اللاحقة أن التعليمة من نوع 8 بت (Byte)، وهذا ما يجعل استعمال السجل AL ضروريا. · "W" : تعني هذه اللاحقة أن التعليمة من نوع 16 بت (Word). استعمال السجل AX ضروري. · "D" : تعني هذه اللاحقة أن التعليمة من نوع 32 بت (DWord) . استعمال السجل EAX ضروري. بسم الله نبدأ:1- التعليمة ADD: ADD {destination},{source} // ADD {الوجهة},{القناع}
تقوم هذه التعليمة بإضافة قيمة المصدر لقيمة الوجهة، وينجم عن هذه العملية تغيير في محتوى الرايات، ويتم تخصيص ناتج الجمع للمعامل الأول.
قد يكون أحد المعاملين سجلا، كما فد يكون المعامل الثاني مرجع ذاكري (متغير أو عنوان ذاكري) أو immediate (رقم مباشر).
add ax, bx // => ax=ax bx // (reg, reg) كلا المعاملين سجّلا add ax, 5 // => ax=ax 5 // (reg, imm) المعامل الثني هو عدد مباشر add ax, var// => ax=ax var // (reg, mem) المعامل الثني هو مرجع ذاكري add ax, [si] // => ax=ax [si] // (reg, imm) المعامل الثني هو مرجع ذاكري 2- التعليمة AND: AND {destination},{mask} // AND {الوجهة},{القناع}
لتبسيط هذه التعليمة، ووفقا جدول الحقيقة الذي سنطّلع عليه لاحقا، فإن الناتج صحيح (=1)، إذا كان كلا المعاملين صحيح، والناتج يكون خاطئا (=0) إذا كان أحد المعاملين خاطئا أو كلاهما.
وبمفهوم آخر أكثر وضوح، تقوم هذه التعليمة بجعل كل بت في الوجهة مساويا للصفر إذا كان القناع مساويا للصفر، في حين لا تغير بت الوجهة إذا كان القناع مساويا للواحد.
حسب لغات البرمجة المعروفة يمكننا تمثيل ذلك بـ: Destination := Destination AND Mask ; // بلغة الباسكال
Destination &= Mask ; // بلغة السي3- التعليمة CALL: CALL {address}
تطلب الإجراء (procedure) أو الدالة (function) المتواجد في العنوان المحدد. فإذا سبقت التعليمة CALL عدة تعليمات من نوع PUSH، فهذا يعني أنها مجموعة من البارامترات تم تخزينها في المكدس (Stack). وفي هذه الحالة ، فإن الإجراء يبدأ بــ:
"push [e]bp ; mov [e]bp, [e]sp "ويمكننا أيضا إيجاد قراءة للبارامترات على شكل: " mov {Register}, [ebp – {Value}] "
وأخيرا لا يجب نسيان التعليمة "RET [{Value}]" في نهاية الإجراء.4- التعليمة CMP:CMP {a},{b}
تقوم هذه التعليمة بمقارنة المتغير a مع المتغير b. وبعدها نجد مباشرة قفزا مشروطا نحو فرع ذاكري آخر "jmp أو je أو jne ...، بصفة عامة j[case] {Offset}".5- التعليمة CMPS: CMPS [B/D/W]
هذه التعليمة تقارن كل بايت/كلمة/كلمة_مضاعفة من القطاع والفرع الذاكريين DS :ESI مع القطاع والفرع الذاكريين ES :EDI6- التعليمة IN:IN {destination},{port}
هذه التعليمة تقرأ قيمة ذات 8 بت على المنفذ {port}، وتخزنه في الوجهة {destination}. أما السجل الوحيد المسموح باستعماله في هذه العملية فهو السجل DX.7- التعليمة IRET:IRET {value}
هذه التعليمة تسمح بمغادرة المقاطعة، وتستعمل فقط للبرامج المستقرة في الذاكرة، مثل سائق (driver) الفأرة.8- التعليمة JMP:JMP {offset}
هذه التعليمة تمكن من القفز إلى العنوان الذاكري المحدد بالفرع {offset}.9- التعليمة J[case]: J[case] {offset}
إذا كانت الحالة [case] صحيحة، فإن التعليمة تنفّذ، وينتقل العمل بذلك إلى العنوان المحدد في الفرع {offset}. الحالة [case] هي شرط متعلق بالرايات (flags)، ويتم تنفيذ الشرط وفق قواعد المنطق المعروفة.
الحالات الممكنة لـ case، بعد أخذ " CMP {a},{b}" كمثال:غير مؤشرة not signed: JA : يتم القفز إذا كان أكبر، في مثالنا a > b، إذا كانت الراية (الدليل) CF=ZF=0JAE, JNB, JNC : إذا كان أكبر أو يساوي (a>=b)، إذا كان CF = 0
JB, JC : أصغر (a JBE : أصغر أو يساوي (a<=b)، إذا كان CF>
| |
| | | المدير AMINE PàTCHIKà
الجنس : تاريخ الميلاد : 25/01/1988 العمر : 36
المدير العام منتديات أمين عبلة الحب :
| | | | المدير AMINE PàTCHIKà
الجنس : تاريخ الميلاد : 25/01/1988 العمر : 36
المدير العام منتديات أمين عبلة الحب :
| موضوع: رد: قائمة التعليمات الجزء الأول الخميس ديسمبر 27, 2012 12:16 pm | |
| | |
| | | المدير AMINE PàTCHIKà
الجنس : تاريخ الميلاد : 25/01/1988 العمر : 36
المدير العام منتديات أمين عبلة الحب :
| موضوع: رد: قائمة التعليمات الجزء الأول الخميس ديسمبر 27, 2012 12:21 pm | |
| | |
| | | | قائمة التعليمات الجزء الأول | |
|
مواضيع مماثلة | |
|
| صلاحيات هذا المنتدى: | لاتستطيع الرد على المواضيع في هذا المنتدى
| |
| |
| تسجيل صفحاتك المفضلة في مواقع خارجية | |
تدفق ال | |
احصائيات | هذا المنتدى يتوفر على 68 عُضو. آخر عُضو مُسجل هو منيره فمرحباً به.
أعضاؤنا قدموا 2539 مساهمة في هذا المنتدى في 2132 موضوع
|
المتواجدون الآن ؟ | ككل هناك 9 عُضو متصل حالياً :: 0 عضو مُسجل, 0 عُضو مُختفي و 9 زائر :: 1 روبوت الفهرسة في محركات البحث
لا أحد
أكبر عدد للأعضاء المتواجدين في هذا المنتدى في نفس الوقت كان 622 بتاريخ الثلاثاء يناير 20, 2015 1:43 pm
|
المواضيع الأخيرة | » مترجمة للعربية و التأليف AMINE@PàTCHIKà اغنية راسل مينيا 27الخميس فبراير 04, 2016 6:25 pm من طرف المدير» مترجمة للعربية و التأليف AMINE@PàTCHIKà - حفلة الحياة - الخميس فبراير 04, 2016 11:18 am من طرف المدير» MGK Invincible Explicit ft Ester Dean اغنية راسلمانيا 28 مترجمة للعربيةالأحد يناير 31, 2016 2:13 pm من طرف المدير» F E A R 3الأحد يناير 18, 2015 4:27 pm من طرف المدير» مذكرة كاملة صحيحةالجمعة يناير 16, 2015 8:19 pm من طرف المدير» المعفيين من التربية البدنية الجمعة يناير 16, 2015 7:49 pm من طرف المدير» تقرير عن الحادثةالجمعة يناير 16, 2015 7:41 pm من طرف المدير» مذكرات السنة الرابعة متوسط كاملةالجمعة يناير 16, 2015 7:36 pm من طرف المدير» مذكرات السنة الثالثة متوسط كاملةالجمعة يناير 16, 2015 7:31 pm من طرف المدير» مذكرات السنة الثانية متوسط كاملةالجمعة يناير 16, 2015 7:27 pm من طرف المدير» دخول مذكرات السنة 1م. ت.ب.الجمعة يناير 16, 2015 7:24 pm من طرف المدير» مذكرة الماستر الجمعة يناير 16, 2015 6:38 pm من طرف المدير» الجمهورية الجزائرية الديمقراطية الشعبية وزارة التعليم العالي والبحث العلمي المدرسة العليا للأساتذة في الآداب والعلوم الإنسانية .... - الجزائرالجمعة يناير 16, 2015 6:03 pm من طرف المدير» تحديد مفهوم بيداغوجيا الخطأ الجمعة يناير 16, 2015 2:01 pm من طرف المدير» أهمية التعلم التعاوني في العملية التعلميةالجمعة يناير 16, 2015 1:51 pm من طرف المدير» التقويم التحصيليالجمعة يناير 16, 2015 12:56 pm من طرف المدير» التقويم البيداغوجي الجمعة يناير 16, 2015 12:45 pm من طرف المدير» التعلم التعــاوني من منظور المقاربة البنائيةالجمعة يناير 16, 2015 12:37 pm من طرف المدير» الاستراتيجيات :الجمعة يناير 16, 2015 12:33 pm من طرف المدير» - إستراتيجيــة التعليم والتعلـــم –الجمعة يناير 16, 2015 12:29 pm من طرف المدير |
أفضل 10 أعضاء في هذا المنتدى | |
أفضل 10 أعضاء في هذا الأسبوع | |
كود الاعجابات الجديد بشكل جميل |
معجبون أحلى منتديات أمين عبلة الحب على بتويتر
معجبون أحلى منتديات أمين عبلة الحب على الفيس بوك |
|