دروس كمبيوتر وصيانة دروس حاسب دروس مجلة  درس نيوك phpnuke الدروس دروس مسنجر MSN - yahoo - Gmail دروس منتديات vBulletin دروس الجوالات والهواتف دروس السي بنل cpanel دروس اكسس access دروس بيونت شوب برو - point shop pro دروس برمجة php - mysql دروس برامج منوعة software دروس ثري دي ماكس 3D max دروس جافا سكريبت JavaScript دروس دريم ويفر DreamWeaver دروس شبكات Networks دروس سويش - swish دروس فلاش - flash دروس فيجوال بيسك Visual Basic دروس فرونت بيج - frontpage دروس فوتوشوب photoshop دروس هكر hacker crack virus
توبيكات رمضان | رسايل رمضان | ثيمات رمضان | طبخات رمضانية | توبيكات رمضانية | صور عن رمضان | دعاء رمضان
احصائيات سريعة
اقسام على الموقع
دروس في أنظمة التشغيل | ماي سكيول - MySQL | لفيجوال بيسك - Visual Basic | المات لاب Matlab | اللينكس و اليونكس | الاسمبلي - ASSEMBLY | الاوتلوك - Outlook | البرمجة تحت اللنكس -Linux Programming | البرمجة تحت وندوز بواسطة دوال ال win API | البرمجة في بيئة الدوت نت .Net | التصمبم والرسوم | الدلفي - Delphi | الجافا - Java | السي - C | الصوت و الصورة | الوورد - Word | القسم العام للأوفيس | الكوبول - COBOL | control panel-ftp | اوراكل - Oracle | اكسل - Excel | تحميل الملفات | برامج متنوعة | برامج التصفح | برامج الحماية | برامج إنترنت | تعرّف على الويب | بوربوينت - Power Point | images | دروس : كمبيوتر وصيانة | دروس مجلة نيوك phpnuke | دروس مسنجر MSN - yahoo - Gmail | دروس منتديات vBulletin | دروس الجوالات والهواتف | دروس السي بنل cpanel | دروس اكسس access | دروس بيونت شوب برو - point shop pro | دروس برمجة php - mysql | دروس برامج منوعة software | دروس ثري دي ماكس 3D max | دروس تطوير المواقع والمنتديات | دروس جافا سكريبت JavaScript | دروس دريم ويفر DreamWeaver | دروس شبكات Networks | دروس سويش - swish | دروس فلاش - flash | دروس فلاش mx | دروس فى نظام الوندوز WINDOWS | دروس فىالباسكال - Pascal | دروس فيجوال بيسك Visual Basic | دروس فرونت بيج - frontpage | دروس فوتوشوب photoshop | دروس هكر hacker crack virus | سي ++ | سي شارب - #C | فيجوال سي ++ - ++ Visual C | قسم البرمجة العام | دروس فى لغة HTML
البحث في المواد

اكثر المحتويات زيارة
الدوال في الاكسل (6,323 مشاهده)
ربط قاعدة بيانات أكسس (MS Access) مع برنامج الفيجوال بيسك بطريقة(ODBC) (4,099 مشاهده)
الدرس الثالث : بعض تطبيقات الدوال في اكسل (3,067 مشاهده)
تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام! (2,384 مشاهده)
الدرس الثاني: بعض الحيل لتسهيل برنامج اكسل (2,282 مشاهده)
شرح طريقة استعمال الأوتلوك مع بريد الهوتميل (2,148 مشاهده)
تغيير لغة واجهة التطبيق من عربي الى انجليزي وبالعكس لـ Windows-based applications (2,116 مشاهده)
أنواع العلاقات وطريقة الربط بين الجداول. (1,911 مشاهده)
مقدمة عامة حول الاكسل وحيل خاصة بالاكسل (1,740 مشاهده)
أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات. (1,704 مشاهده)
الدرس الأول : عمل شريحة في البوربوينت (1,562 مشاهده)
دروس في الأوفيس الأكسس - Access0- (1,478 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس . (1,465 مشاهده)
كيفية حل مشاكل الانترنت اكسبلور Internet Explorer (1,447 مشاهده)
اضافه صوت ونص لخلفيه في باور بوينت (1,343 مشاهده)
شرح طريقة التجميع Grouping في برنامج الاكسل (1,306 مشاهده)
التعرف على مكونات الكمبيوتر (1,266 مشاهده)
برنامج Windows Movie Maker لتكوين أفلام (1,250 مشاهده)
درس تعريب المجلة (1,244 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,236 مشاهده)
مقدمة في ربط قواعد البيانات داخل بيئة الـ .NET باستخدام الـ VB.NET (1,218 مشاهده)
كيف تجعل برنامجك أكثر تألقا وجمالا باستخدام أداة Active Skin (1,193 مشاهده)
ما هو المات لاب MATLAB؟ (1,159 مشاهده)
مقدمة عن لغة البيسك (1,121 مشاهده)
الفيجوال بيسك - مقدمة (1,081 مشاهده)
جديد مواد مع عشوائي
التحويل التلقائي للحروف ل- ل- ه إلى اسم الجلالة0---- (784 مشاهده)
النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0---النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0--- (484 مشاهده)
ضبط خيارات اللغة فى الـ Microsoft Word0--- (534 مشاهده)
استخدام لوحة المفاتيح في الـ Word0---- (703 مشاهده)
إضافة كلمة سر إلي ملفات الورد دون استخدام برامج0--- (783 مشاهده)
دمج المراسلات0-- (435 مشاهده)
وضع صورة كخلفية للنص0-- (559 مشاهده)
السماح للمستخدمين بتعديل أجزاء من ملف وورد محمي (Word2003)0--- (381 مشاهده)
كتابة الأرقام الكسرية ورموز المعادلات0-- (624 مشاهده)
درس كامل عن الدمج السهل من لوحة المفاتيح ف0-ي برنامج الـ Word (390 مشاهده)
دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,236 مشاهده)
دورة الأكسيس : الدرس الرابع : العلاقات0---- (659 مشاهده)
أساسيات في Access0--0 (450 مشاهده)
تصميم تقرير لطباعة البيانات0---- (491 مشاهده)
تصميم نموذج استعراض البيانات‏0--تصميم نموذج استعراض البيانات‏0-- (471 مشاهده)
تصميم نموذج إدخال‎ ‎البيانات0--- (557 مشاهده)
إنشاء قوائم خاصة باستخدام الماكرو(1)0-- (435 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (2)0-- (369 مشاهده)
خطوات إنشاء الماكرو في تذييل النموذج (1)0- (325 مشاهده)
استعلامات SQL في Access - تعديل الجداول وإضافة الحقول0- (460 مشاهده)
استعلامات SQL في Access - تحديث البيانات الجدولية0-- (415 مشاهده)
الاستعلامات الإجرائية -4 (استعلام الحذف)0--- (214 مشاهده)
الاستعلامات الإجرائية -2 (استعلام الإلحاق)0--- (294 مشاهده)
تصميم تقرير لطباعة الإجمالي0--- (321 مشاهده)
استعلامات التحديد Select Query مع أمثله (1)0--- (425 مشاهده)
اعلانات في الموقع على جميع الصفحات

التعليمة LODS:-

قائمة التعليمات [الجزء الأول]





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


 


الآن وبعد الدرسين السابقين وصلنا إلى قائمة التعليمات التي تحوي 34 تعليمة و سنستعرضها إن شاء الله في درسين:



  1. الدرس الاول يحوي 16 تعليمة هي:
    ADD – AND – CALL – CMP – CMPS – IN – IRET – JMP - J[case] – LEA – LDS - LES - LFS – LGS – LSS – LODS


  2. وفي الدرس الثاني توجد 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 :EDI


6- التعليمة 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<b)، إذا كان CF=ZF=1


JBE : أصغر أو يساوي (a<=b)، إذا كان CF><OF و ZF=1.


مؤشرة signed:


JG : أكبر (a>b)، إذا كان SF=ZF=0


JGE : أكبر أو يساوي (a>=b)، إذا كان SF = OF



 


JL : أصغر (a<b)، إذا كان SF <> OF 


JLE : أصغر أو يساوي (a<=b)، إذا كان SF<>OF و ZF=1.


متساوية:


JE, JZ : يساوي (a=b)، إذا كان ZF=1.


JNE, JNZ : يختلف عن (a <> b)، إذا كان ZF=0.


10- التعليمة LEA:


LEA {destination},{source}

يتم هنا كتابة عنوان المصدر {source} في الوجهة {destination}. 


هذه التعليمة تكافئ:

MOV {destination},Offset{source} 

11- التعليمة LDS:


LDS {destination},{address}

نسخ عنوان {address} من نوع 32 بت في السجّل DS، (الذي هو قطاعه)، وفي {destination} من نوع 16 بت، (التي هي فرعه). 


12- التعليمة LES:

LES {destination},{address} 

نسخ عنوان {address} من نوع 32 بت في السجّل ES، (الذي هو قطاعه)، وفي {destination} من نوع 16 بت، (التي هي فرعه). 


13- التعليمة LFS:

LFS {destination},{address} 

نسخ عنوان {address} من نوع 32 بت في السجّل FS، (الذي هو قطاعه)، وفي {destination} من نوع 16 بت، (التي هي فرعه). 


14- التعليمة LGS:

LGS {destination},{address} 

نسخ عنوان {address} من نوع 32 بت في السجّل GS، (الذي هو قطاعه)، وفي {destination} من نوع 16 بت، (التي هي فرعه). 


15- التعليمة LSS:

LSS {destination},{address} 

نسخ عنوان {address} من نوع 32 بت في السجّل SS، (الذي هو قطاعه)، وفي {destination} من نوع 16 بت، (التي هي فرعه). 


16- التعليمة LODS:

LODS [B/D/W] 

نسخ البايت/الكلمة/الكلمة_المضاعفة ES :EDI في السجل AL/AX/EAX. 


* التعليمة العكسية لها هي: " STOS [B/D/W]".


درس التعليمة LODS:-

أضف هذه المادة في موقعك:
مواد مشابهة:
 معجم التجميع- معجم التجميع-
معجم التجميع-
(مرات المشاهدة: 100 مرات)
قائمة المقاطعات= قائمة المقاطعات=
قائمة المقاطعات=
(مرات المشاهدة: 54 مرات)
مفاهيم المسجلات مفاهيم المسجلات
مفاهيم المسجلات
(مرات المشاهدة: 175 مرات)
كيفية تشغيل برامج الأسمبلي على البرنامج masm كيفية تشغيل برامج الأسمبلي على البرنامج masm
كيفية تشغيل برامج الأسمبلي على البرنامج masm
(مرات المشاهدة: 216 مرات)
مفاهيم المسجلات- مفاهيم المسجلات-
مفاهيم المسجلات-
(مرات المشاهدة: 265 مرات)
دورة الأسمبلى - اليوم الثالث دورة الأسمبلى - اليوم الثالث
دورة الأسمبلى - اليوم الثالث
(مرات المشاهدة: 240 مرات)
قائمة السجلات + قائمة الرايات قائمة السجلات + قائمة الرايات
قائمة السجلات + قائمة الرايات
(مرات المشاهدة: 81 مرات)
دورة الأسمبلى - اليوم الخامس دورة الأسمبلى - اليوم الخامس
دورة الأسمبلى - اليوم الخامس
(مرات المشاهدة: 147 مرات)
اكتب اول برنامج بالاسمبلي-- اكتب اول برنامج بالاسمبلي--
اكتب اول برنامج بالاسمبلي--
(مرات المشاهدة: 107 مرات)
التعليمة MOV: التعليمة MOV:
التعليمة MOV:
(مرات المشاهدة: 87 مرات)
fot
جميع الحقوق محفوظة :Copyright © All rights reserved