الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تحويل كود الى كود اسيمبلي

مغلق
بدأه مجدي محمود في 30 نوفمبر 2004 · 2 رد · 630 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

ممكن احد من الاخوة ان يشرحلي كيف تحويل الشفرة التالية الى اسيمبلي لانني جديد على هذه اللغة .

for(i=0;i<=4;i++)
{
Field = Field +Field[i+1]
}

اعرف ممكن يكون سهل لكن على مبتدئ مثلي صعب شوي :)

لست متواجد بشكل يومي

#2

السلام عليكم,

سأعطيك هنا مبادرة وهي مكتوبة بطريقة جد بدائية حتى يسهل فهمه. وهنا أعتبر أن المتغير Field هو من نوع Word .

lea si,Field
mov di,si
add di,2
mov cx,4
TheLoop:
    mov ax,[di]
    add [si],ax
    add si,2
    add di,2
    loop TheLoop

وهذا الكود كما يلي :

نضع عنوان المتغير في الرجستر si

نضع نفس العنوان في di

نزيد له 2 ليؤشر إلى المتغير الموالي .نوع word يساوي 2 بايت

نضع في cx قيمة for

نضع ما يوجد في di في الرجستر ax يعني هنا Field[i+1]

نزيد هذا في si

نزيد لكاتا الرجسترين 2 ليشيرا إلى المتغيرين المواليين

إلى اللقاء

#3

مشكور اخي chik كفيت ووفيت

لست متواجد بشكل يومي

هذا الموضوع مغلق.

مواضيع مشابهة