-
الإعلانات
-
تسجيل عضوية جديدة في المنتدى 01/31/2016
السلام عليكم ورحمة الله وبركاته عزيزي العضو الجديد : حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة ) فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK) وقم بتفعيل إشتراككم من هناك
-
-
عدد المشاركات
145 -
تاريخ الانضمام
-
تاريخ اخر زياره
السمعه بالموقع
2 عاديعن AND
-
الرتبة
عضو
طرق الإتصال
- ICQ 0
-
AND أعطى سمعة إيجابية لــ رد في موضوع: الة الزمن The Time Machine وتقنية البرمجة بدون كود PWCT
-
AND أعطى سمعة إيجابية لــ إجابة على سؤال: هل بالإمكان فك تشفير ملفات رار
-
AND أعطى سمعة إيجابية لــ رد في موضوع: لغة منشئ المواقع - الاصدار 0.3
-
AND أعطى سمعة إيجابية لــ إجابة على سؤال: الفرق بين ال active Directory وال group policy
-
AND أعطى سمعة إيجابية لــ رد في موضوع: و مات ستيف جوبز
-
AND أعطى سمعة إيجابية لــ رد في موضوع: و مات ستيف جوبز
-
byte101 أعطى سمعة إيجابية لــ رد في موضوع: هل يمكن أغلاق منافذ Usb من خلال الرجيسترى لمنع تركيب الوحدات التخزينيه من خلالها
-
AND أعطى سمعة إيجابية لــ رد في موضوع: الشبكات الاجتماعية ودورها في السياسة
-
لا ليس Shredding ، الأداة تقوم فقط بالغاء البارتيشن في نظام الملفات فقط دون اي تغير في الملفات ولهذا فهي في اجزاء من الثانية يمكن أن تنهي الأمر فيتخيل اي شخص ان الهارد تلف او فقدت محتوياته ولكن كل شيء موجود ، فقط اعادة بناء البارتيشن السابقة يكفي لاعادة الامور ، ال Shredding وال Replacement وحذف الملفات نهائيا يأخذ وقت مثل وقت عملية ال copy ، paste تم مناقشة هذا البرنامج كفايروس هنا فيروس خطير للتحليل
-
الحصول على الوقت و التاريخ من ال Bios
AND رد على محمد علاء الدين's موضوع في أرشيف قسم الـــ Assembly
نعم بالعودة لجدول المقاطعات Idt فان المقاطعة 1A وباقي مقاطعات البيوس محجوزة 0014 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 0015 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 0016 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 0017 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 0018 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 0019 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001A 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001B 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001C 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001D 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001E 0008:8053F950 0 P 32 bits Interrupt Gate Intel reserved. Do not use 001F 0008:806CFFD0 0 P 32 bits Interrupt Gate Intel reserved. Do not use أخبرنا بالنتيجة عند التجربة وبالتوفيق -
الحصول على الوقت و التاريخ من ال Bios
AND رد على محمد علاء الدين's موضوع في أرشيف قسم الـــ Assembly
السلام عليكم هل هذه الطرق منفصلة ومختلفة عن بعض ؟ وهكذا فهمتها ام هي مراحل اي المرحلة الاولى ثم الثانية والثالثة اذا كانت طرق مختلفة فالطريقة الاولى كيف تقوم باستدعاء المقاطعة من الـreal mode وهو غير مهيأ للتعامل مع مقاطعات الدوس ما فهمته ان جدول المقاطعات عندما يهيأ من قبل انظمة الدوس و9x هي مختلفة عن جدول مقاطعات أنظمة NT بمعنى ال Nt لاتحتوي مقاطعات الدوس في جدول المقاطعات حتى يتم استدعاؤها. فما رايكم بهذا الكلام ؟- 6 ردود
-
1
-
مجهود جميل اعجبني صغر حجمه وتحديد عدد مرات استدعاء دالة معينة لكن ما الذي يميز هذا البرنامج عن البرامج الاخرى؟! أيضا على أي أساس قمت باستخراج دوال private على رأيك ! هل التعليمة التي بعد تعليمة ret وغير موجودة في ال export ؟ هناك الكثير من الاكواد على هذا الشكل ولكن لا تمثل دالة حقيقية تقوم بانجاز مهمة معينة . لماذا لا تستخدم التوقيع المميز للدالة على أكثر من نسخة للويندوز بدل العنوان وتضمن العمل على كافة النسخ المحددة ؟
-
[ تمت الإجابة ]how to get the module name of process
AND رد على soufianosse's موضوع في أرشيف قسم الـــ Assembly
هذا الكود وظيفته هو ترتيب ال Modules في المصفوفة التي تم حجزها في الذاكرة (hMods) من العنوان الاصغر الى العنوان الاكبر، اي 7C800000 يضعها قبل 7C900000 حتى يتم عرضها في ال ListView بشكل مرتب [hMods+ecx*4] هذه تعني العنوان الموجود عند hMods+ecx*4 والاقواس [] تعني ما بداخل هذا العنوان او ما يؤشر عليه العنوان كل عنوان هو عبارة عن 4 بايت وكما قلت يتم ارجاع نتيجة الدالة السابقة بجميع المقابض دفعة واحدة فعند الحصول على اول مقبض تكون قيمة ecx = 0 وبالتالي 0x4=0 هنا نحصل على اول مقبض لModule الموجود في hMods وحتى نحصل على المقبض التالي يجب ان ننتقل 4 بايتات للامام وبذلك نزيد قيمة (inc ecx) لتصبح ecx = 1 وبالتالي 1x4=4 وبالتالي hMods+4 وهكذا بشكل متكرر مع مضاعفات الرقم 4 حتى نصل الى مقبض الModule الاخير وتم تحديد عدد المقابض بقسمة حجم المصفوفة الناتجة على 4 . -
بالمناسبة ال ListView هي أعقد كونترول في الويندوز في حال اردت حل اسهل لتنفيذ هدفك استخدم RaGrid الموجود في محرر Radasm سهل ومرن في التعامل .
-
للاسف العديد من الملفات المكتوبة بالعربية عندي لا يستطيع Foxit Reader فتحها .
-
Speed_Of_Light: الخطأ هو في استخدام مجمع 32 بت واستخدام امر تجميع لل 32 بت استخدم مجمع masm 6 وما قبل .
-
[ تمت الإجابة ]تحويل الخوارزمية الى كود اسمبلي
AND رد على aderfiad's موضوع في أرشيف قسم الـــ Assembly
اي طريقة تقصد لا يوجد سوى كود واحد وهو الذي تم جمع الجزء الاول باستبعاد ما يقل عن 30h مضافا اليه الجزء الثاني ما فوق 39h ؟! -
[ تمت الإجابة ]اسناد اللون للمكونات في Dialog
AND رد على aderfiad's موضوع في أرشيف قسم الـــ Assembly
في المرفقات مثال جيد لمبرمج غربي عن تلوين عدة كنترولز . بامكانك استخدام SetBkColor لتلوين الخلفية SetTextColor لتلوين النص كلاهما يحتاج handle to device context الخاص بهم بالامكان الحصول عليه من رسائل النظام المُرسلة الى الديالوج قبل ان يتم انشاء الكنترولز وهي مختلفة على حسب الكنترول WM_CTLCOLORSTATIC WM_CTLCOLORBTN WM_CTLCOLORDLG WM_CTLCOLOREDIT WM_CTLCOLORSCROLLBAR WM_CTLCOLORLISTBOXحيث بقنص الرسالة تحصل wparam به ال hDC وهذه الطريقة المستخدمة في المرفق. او بامكانك استخدام الدالة GetDC CTLColor.zip -
[ تمت الإجابة ]تحويل الخوارزمية الى كود اسمبلي
AND رد على aderfiad's موضوع في أرشيف قسم الـــ Assembly
السلام عليكم عودا حميدا اخي Xacker تفاجأت بنشاط المنتدى بشكل غريب :D اخي aderfiad بالنسبة للمقارنة فهي كما قال Xacker الاعداد بالتمثيل الهكسي لها في ترميز الاسكي محصور بين 30h =< num =< 39h وخارج هذا المجال لا يعنينا اذا نريد تعليمة تتاكد من ان المُدخل اذا كان اقل من 30 نرفضه: cmp al,30h jb _ErrorNotNumber لاحظ اني اخترت jump if below لانها Unsigned وهذا فيما يختص بالاقل من 30h وحتى 00h اما بما يزيد عن 39h نفس الفكرة السابقة: cmp al,39h ja _ErrorNotNumber ليصبح كود التحقق من وجود ارقام فقط: cmp al,30h jb _ErrorNotNumber cmp al,39h ja _ErrorNotNumber Good its number: . . . . ErrorNotNumber: . . . هي المقاطعة int 21h , Ah وانتبه الى بارامترات الدالة فهي تطلب تحديد Buffer وادخاله في DS:DX وهذا البفر له تركيبة خاصة : اي يجب عليك تحديد أقصى عدد يمكن استخدامه في البفر ، وهو اول بارامتر . كمثال : .data MaxKeyBuf db 0feh ; [in] maximum characters could be written CharsWritten db 00h ; [out] return the number of characters written by user KeyBuffer db 255 dup (?) ; [out] hold characters .code lea dx,MaxKeyBuf mov ah,0ah int 21h -
[ تمت الإجابة ]تحويل الخوارزمية الى كود اسمبلي
AND رد على aderfiad's موضوع في أرشيف قسم الـــ Assembly
هناك عدة اخطاء بين كتابية يكتشفها المترجم ، واخطاء منطقية بعد ترجمة البرنامج وتشغيله . الاخطاء الكتابية: حجم المتغيرات num1 و num2 و x يختلف عن حجم مسجل dx الاخطاء المنطقية: في حال نجاح ترجمة الكود السابق سيفشل البرنامج لانك لم تُنهي المتغيرين num1 و num2 باشارة $ عند عرضهم. هذا الكود لا يتم فيه استخدام وسيط مثل المتغير x ، بل يستخدم التعليمة xchg عدله بما يناسبك : .model small .stack 100 .data in1 db 0ah,0dh,'input chiffre 1:$' in2 db 0ah,0dh,'input chiffre 2:$' out1 db 0ah,0dh,'chiffre 1 is:' num1 db 00h,24h out2 db 0ah,0dh,'chiffre 2 is:' num2 db 00h,24h .code start: mov ax,@data mov ds,ax mov es,ax lea dx,in1 mov ah,9 int 21h mov ah,1 int 21h mov num1,al lea dx,in2 mov ah,9 int 21h mov ah,1 int 21h mov num2,al mov bl,num1 mov cl,num2 xchg bl,cl mov num1,bl mov num2,cl lea dx, out1 mov ah, 9 int 21h lea dx, out2 mov ah, 9 int 21h mov ax, 4c00h int 21h end start -
تقصد نظام الدوس ام الويندوز؟
-
[ تمت الإجابة ]ممكن لو تفضلتم بعض التوضيحات البسيطة بالأسمبلي وكدا بعض الأستفسارات
AND رد على m2z's موضوع في أرشيف قسم الـــ Assembly
لا اعلم بالضبط ما هي التعليمات المختلفة بين AMD و Intel لاني لم ابحث جيدا في الموضوع . لكن التعليمات الاساسية Basic Architecture لا تختلف مثل التعليمات التي هنا http://www.itis.mn.it/linux/quarta/x86/index.htm لم انتبه الى هذا الرد في هذا الموضوع وهو يشرح ما اريد ذكره http://www.arabteam2000-forum.com/index.ph...t&p=1002771 -
[ تمت الإجابة ]كتابة غريبة عند التنفيد ... رغم ان الكود صحيح
AND رد على aderfiad's موضوع في أرشيف قسم الـــ Assembly
كما تعلم اخ Syntax_err النص في مقاطعات الدوس ينتهي ب $ ، وفي Win32 API ينتهي ب Null فيعتمد الموضوع على شرح الدالة او المقاطعة فالمقاطعة int 21h,9h المستخدمة في الكود فوق تتطلب string ينتهي ب $ لاحظ ايضا دالة lstrcpy في ويندوز تتطلب string ينتهي ب Null بينما lstrcpyn تستطيع تحديد عدد لحروف فيها .