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

كيف يجب أن تكون الأسمبلي بالفعل

بدأه مصطفى 36a2 في 1 يونيو 2012 · 5 رد · 1,715 مشاهدة · في لغة Assembly لأنظمة 16, 32, 64 بت
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أنا لا أطلب الكثير ... كانت فكرتي عن الاسمبلي ببساطة شديدة أنني أريد أن افتح ملف txt وأكتب فيه بعض الحروف

ثم أغلقه وأحفظه بصيغة exe

وعندما أضغط عليه مرتين سيفتح لي برنامجاً كأي برنامج .....

لا تستغرب أخي القارئ من كلامي أو تظن أنني مجنون .. بالفعل هذاهو جوهر لغة الآلة تعليمات ينفذها المعالج دون ترجمة ... أليس كذلك؟؟

وكيف برأيك يجب أن تكون الهندسة العكسية .؟ نفس الجملة السابقة بالعكس .. :lol:

نفتح ملف exe بعد إعادة تسميته إلى صيغة txt ونقرأ الرموز العجيبة ثم نكتشف الرموز التي تعني اخذ كلمة السر وهكذا ...

طبعاً ليس الأمر هكذا تماماً ... فالحرف من الآسكي الذي رقمه 106 هو حرف j وعندما نضع بعده المحرف الذي رقمه 0 فهذا يعني أننا كتبنا التعليمة push 0

لماذا لا توجد هنسة عكسية بدون olly ؟؟ هل الموضوع أكبر من الذي ذكرته في السطر السابق ...

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

أليس الموضوع يستحق التعب ... لم لا نترجم الملف التنفيذي بهذه البساطة ونكتبه بهذه البساطة أيضاً ...

هناك المزيد ...

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

ليس الموضوع أن ال masm يحول nop إلى 90 ويقتصر على ذلك ....

لأننا نكتب مثلا invoke لاستدعاء الدالة ثم نمرر الوسطاء ... وهذا يخالف ما اتفقنا عليه ...

باختصار الأسمبلي يجب ألا تتعدى ما نراه أثناء تنقيح البرنامج من تعليمات ... ولا يحب ان نستعمل مجمعات ... إنما مجرد برنامج بسيط لتحويل nop إلى 90 و call إلى E8 فقط وليس إلا ....

ربما لاحظتم الرغبة في عدم استخدام البرامج الجاهزة انتهيت كلامي عن الاسمبلي أما عن البرمجة بشكل عام ... فأنتظر إجابتكم عن السؤال ما هي حقيقة البرمجة؟

والسلام عليكم

1 −1
#2
اقتباس
ليس الموضوع أن ال masm يحول nop إلى 90 ويقتصر على ذلك ....

لأننا نكتب مثلا invoke لاستدعاء الدالة ثم نمرر الوسطاء ... وهذا يخالف ما اتفقنا عليه ...

باختصار الأسمبلي يجب ألا تتعدى ما نراه أثناء تنقيح البرنامج من تعليمات ... ولا يحب ان نستعمل مجمعات ... إنما مجرد برنامج بسيط لتحويل nop إلى 90 و call إلى E8 فقط وليس إلا ....

اعتقد ان فيه حاجة اسمها توقيع الدوس وعناوين مكتبات الdll فى الذاكرة اللى بتستدعى من نظام التشغيل عند طلب دالة معينة "على حد علمى"

ولكن انت تريد استخدام لغة الالة ولازم تحول 90 التى تمثل "nop" مثلا الى 0000000001011010 وهى القيمة بالنظام الثنائى حتى يفهما المعالج ويكون برنامجك كله بلغة الالة وتكون ملم بهيكلة البرنامج فى نظام التشغيل "PE"

#3
مصطفى 36a2 كتب:

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

أنا لا أطلب الكثير ... كانت فكرتي عن الاسمبلي ببساطة شديدة أنني أريد أن افتح ملف txt وأكتب فيه بعض الحروف

ثم أغلقه وأحفظه بصيغة exe

وعندما أضغط عليه مرتين سيفتح لي برنامجاً كأي برنامج .....

لا تستغرب أخي القارئ من كلامي أو تظن أنني مجنون .. بالفعل هذاهو جوهر لغة الآلة تعليمات ينفذها المعالج دون ترجمة ... أليس كذلك؟؟

وكيف برأيك يجب أن تكون الهندسة العكسية .؟ نفس الجملة السابقة بالعكس .. :lol:

نفتح ملف exe بعد إعادة تسميته إلى صيغة txt ونقرأ الرموز العجيبة ثم نكتشف الرموز التي تعني اخذ كلمة السر وهكذا ...

طبعاً ليس الأمر هكذا تماماً ... فالحرف من الآسكي الذي رقمه 106 هو حرف j وعندما نضع بعده المحرف الذي رقمه 0 فهذا يعني أننا كتبنا التعليمة push 0

لماذا لا توجد هنسة عكسية بدون olly ؟؟ هل الموضوع أكبر من الذي ذكرته في السطر السابق ...

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

أليس الموضوع يستحق التعب ... لم لا نترجم الملف التنفيذي بهذه البساطة ونكتبه بهذه البساطة أيضاً ...

هناك المزيد ...

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

ليس الموضوع أن ال masm يحول nop إلى 90 ويقتصر على ذلك ....

لأننا نكتب مثلا invoke لاستدعاء الدالة ثم نمرر الوسطاء ... وهذا يخالف ما اتفقنا عليه ...

باختصار الأسمبلي يجب ألا تتعدى ما نراه أثناء تنقيح البرنامج من تعليمات ... ولا يحب ان نستعمل مجمعات ... إنما مجرد برنامج بسيط لتحويل nop إلى 90 و call إلى E8 فقط وليس إلا ....

ربما لاحظتم الرغبة في عدم استخدام البرامج الجاهزة انتهيت كلامي عن الاسمبلي أما عن البرمجة بشكل عام ... فأنتظر إجابتكم عن السؤال ما هي حقيقة البرمجة؟

والسلام عليكم

معاك في كل ماقلته وهذا هو تفكيري , متى ساصبح قادر على إعطاء الأوامر الى الحاسوب فقط بفتح الحاسوب

أعطاء إشارة كهربائية إلى سلك إستقبال الاوامر في المعالج :)

اما بالنسبة لmasm والمترجمات الاخرى فلا تقوم بالتحويل من nop الى 90 مثلا فقط بل ايضا كتابة مقدمة البرنامج التي تحوي

مثلا الساحة التي ستحجز في المكدس و .....

#4

أي نظام تشغيل محترم لا يسمح بالتعامل بتلك الكيفية التي تحدثت عنها

GoodBye

#5

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

راجع موضوع: الملفات التنفيذية ؟

/index.php?showtopic=98109&st=0

اطلع على كل المشاركات من البداية حتى النهاية

تم تعديل هذه المشاركة بواسطة B.M.AbdelAziZ في 27 سبتمبر 2012 في 13:55

d4baa0.gif
#6

جزاك الله خيراً أخيB.M.AbdelAziZ

أوصلني بحثي إلى دراسة المايكروكونترولر ...والآن ولله الحمد أقوم بدراسته ...

وقد قمت بعمل بعض البرامج تنفّذ ما قلته أعلاه ... ودرست القليل من الهندسة العكسية والأسمبلي بحيث أتعمق أكثر ...

وقمت ببعض التجارب بفهم لغة الآلة أكثر ... وكتبت جداول بكل التعليمات للغة الآلة ... والحمد لله ..تجاوزت مرحلة الضبابية إلى مرحلة الجهل laugh.giflaugh.gif

وسأقرأ الرابط الذي وضعته ...أسأل الله لك التوفيق ولجميع الأعضاء الكرام ...

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

__________________________________تحديث___________________

قرأت المشاركة ... ماشاء الله عليك أخي الفاضل ...بالك طوييل ... ومعلّم بكل معنى الكلمة ...

فعلاً مشاركة هامة ...(مررت بالمراحل التي ذكرتها ..جزاك الله خيراً)

تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 27 سبتمبر 2012 في 20:32

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