برمجة:أسمبلي:قائمة بأوامر أسمبلي لتصميم x86

إن أجهزة الحاسوب المبنية بتصميم x8 6 فيها ثمانية خانات تخزين (Register) للإستخدام العام من قبل البرامج، 6 خانات تخزين لعناوين مناطق في الذاكرة ، وخانة تخزين واحدة للمعلومات (قيم تحمل إما 0 أو 1). وكذلك مؤشر للأوامر واحد.

48Jkss <a href="http://feapfdtinico.com/">feapfdtinico</a>, [url=http://oylocvzfdsec.com/]oylocvzfdsec[/url], [link=http://bvyolijwwgqd.com/]bvyolijwwgqd[/link], http://xsiwbexszjut.com/

I2ok6a <a href="http://atdqjdjjbhuy.com/">atdqjdjjbhuy</a>, [url=http://afsakxuxiilp.com/]afsakxuxiilp[/url], [link=http://uhqrggxoymvw.com/]uhqrggxoymvw[/link], http://vyqwwqgxrnox.com/

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

خانة تخزين المعلوماتعدل

خانة تخزين المعلومات أو Flags Register هي خانة من 32 بت تستخدم لتخزين ومراقبة نتائج العمليات وحالة المعالج. يسمى كل بت منها راية بالإنجليزية Flag.

EFLAGS Flags
0 0 0 0 0 0 0 0 0 0 ID VIP VIF AC VM RF 0 NT IOPL OF DF IF TF ZF 0 AF 0 PF 1 CF


البتات رقم 0 ورقم 1 محجوزان ومن المفترض ان لا يتم تغييرهما.

تستخدم الرايات لاغراض هي :

  • CF : Carry Flag. الباقي في عمليات رياضية بدون إشارة.
  • PF : Parity Flag. تشير إلى كون البايت الأكثر دونية تم آخر تعديل عليه عدد البتات فيه فردي أم زوجي.
  • AF : Adjust Flag. الباقي للعمليات الحسابية على Binary Code Decimal (BCD).
  • ZF : Zero Flag. يشير إذا ما كانت نتيجة العملية الأخيرة صفر (0).
  • SF : Sign Flag. يشير إذا ما كانت إشارة العدد ناقص (سالبة).
  • TF : Trap Flag. تشير إلى كون نظام في تهيئة البحث عن المشاكل والأخطاء وبالتالي التصبيق يتم خطوة خطوة.
  • IF : Interuption Flag. يشير إلى كون المقاطعات (Interrupts) مسموحة.
  • DF : Direction Flag. Stream direction. Set if increments addresses.
   * OF : Overflow Flag. Set if overflow on signed arithmetic operations.
   * IOPL : I/O Privilege Level field (2 bits). I/O Privilege Level of the current process.
   * NT : Nested Task flag. Controls chaining of interrupts. Set if the current process is linked to the next process.
   * RF : Resume Flag. Response to debug exceptions.
   * VM : Virtual-8086 Mode. Set if in 8086 compatibility mode.
   * AC : Alignment Check. Set if alignment checking in of memory references are done.
   * VIF : Virtual Interrupt Flag. Virtual image of IF.
   * VIP : Virtual Interrupt Pending flag. Set if an interrupt is pending.
   * ID : Identification Flag. Support for CPUID instruction if can be set.


MOVعدل

الأمر mov يقوم بتقل المعلومات من وحدة تخزين (Register) أو منطقة ذاكرة أو قيمة ثابتة إلى مكان تخزين آخر.

يمكنه نقل من وحدة تخزين في المعالج إلى وحدة تخزين أخرى ، مثال:

mov ax,bx

أو

mov cl,dh 

كما يمكنه وضع قيمة ثابتة (عدد صحيح) في وحدة تخزين المعالج.

mov 5,al 

أو

mov 3AB5H,cx

ووضع الحرف H بعد الرقم يعني أن الرقم بنظام العد الست عشري Hexadicimal ، أي أن كل خانة يمكن أن تحتوي على 16 عددا وليس على 10 فقط كما في النظام العشري ، وتستبدل القيم التي تعبر عن 10 و 11 و 12 و13 و 14 و15 في النظام العشري بخانة واحدة لكل منها كالترتيب الآتي A B C D E F ، فيكون العدد FFh على سبيل المثال هو عبارة عن 15 + 15×16 ، تماما كما أن العدد 99 هو عبارة عن 9 + 9×10