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

كم سؤال بالاسيمبلي اذا ممكن

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

السلام عليكم شباب

اولا اشكر بعض الاخوان على جهودهم المتميزة بالمنتدى واللي خلته يتميز عن باقي المنتديات طبعا هذه مشاركتي الاولى بهذا المنتدى عندي كم سؤال وإن شاء الله تساعدوني عليها القصة ومابيها برنامج الواجهة بالسي ++ (بورلاند) وداخله اسيمبلي يستخدم المقاطعة رقم 21 الخاصة بالملفات ادخل بالمطلوب

1- نسخ ملفا الى فهرس اخر

2- عرض ارقام الكتل الحرة

3- قراءة حجم القرص ( a: او c:)

4- عمل نسخة احتياطية من قطاع الاقلاع الى مكان فارغ في الذاكرة

5- عرض محتويات الـ FAT لقرص (ليس معلومات عن الـ FAT وانما عرض محتوياته)

انتظر ردودكم الكريمة

وشكرا

#2

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

أعتقد أنك بحاجة إلى معرفة مقاطعات البويس & والدوس

في هذة الصفحة تجد المقاطعات , وماتسأل عليها من خدمات أسهل أن تطبقها بالدوس

المهم , إقرأ عمل كل مقاطعة وبعد أن تجد مطلبك , إضغط عليها لتتجة إلى صفحة الأمثلة

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte1at0.htm

-

http://www.jaascois.com

*************************************************

مجموعة مواضيع - إحتراف البرمجة -

ّ~~~~~~~~~~~~~~~~~~~~~~

البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة

/index.php?showtopic=45002

آخر المواضيع :

+- تحليل جرائم الكمبيوتر -+

أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات

ثغرة SMS لأجهزة الجوال Siemens 3568i !

أخطاء وثغرات البرامج العربية !!!

سلسلة مواضيع - أمن وحماية مواقع الويب -

E البرمجة المتقدمة X للملفات التنفيذية E

سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة

**************************************************

<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>

**************************************************

#3

اخ jaaz اشكرك على الموقع الذي اعطيتني اياه وهو اكيد مفيد لكنه لم يسعفني ولم اجد ما يناسبني فيه لا ادري لماذا يبدو انه لايوجد مقاطعات جاهزة لهذه المشاكل وانما المزج بين اكثر من مقاطعة مثل استعرض الـ FAT والـ Boot sector

محتاج الى توضيح اكثر لو سمحت لانه انا مبتدئ في هذه المادة توجد مشكلة اخرى وهي ان الـ label لا يتعرف عليه كمبايلر السي ++ والـ jmp كذلك ومكتوب في الـ help لغة سي++ انه لا يتعرف عليه فكيف الحل وبالمناسبة انا شغال على بورلاند سي الاصدار 3.6

وشكرا

#4

وينكم وين همتكم اسئلتي شو الاسئلة صعبة هذه مشاركتي الاولى معاكم

وين المحترفين بالاسيمبلي والسي ++

#6

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

أشكر أخي Asm4all على الأمثلة

/index.php?showtopic=51480

وبالنسبة لبقية الأسئلة....

اقتباس
- عرض محتويات الـ FAT لقرص (ليس معلومات عن الـ FAT وانما عرض محتوياته)

تبدأ قطاعات الجدول فات من القطاع 1 أي بعد قطاع الإقلاع 0

وبإستخدام مقاطعة البويس 13 والخدمة 2 تستطيع أن تقرأ هذة القطاعات

وبامترات هذة المقاطعة هي :

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte6xo0.htm

اقتباس
- عمل نسخة احتياطية من قطاع الاقلاع الى مكان فارغ في الذاكرة

تقوم بقرائة قطاع الإقلاع وهو القطاع رقم 0 , بنفس الطريقة السابقة

بعد ذلك تحجز لة مساحة في الذاكرة لكتابتة , وتستخدم إحدى مقاطعات الدوس , وهي

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte831s.htm

اقتباس
- قراءة حجم القرص ( a: او c:)

بمجرد تنفيذ هذة المقاطعة

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte2tf4.htm

تعيد لك 3 معلومات , عدد التجمعات في القرص , عدد القطاعات في كل تجمع , عدد البايتات في كل قطاع ؟!

إضرب الثلاث قيم = تحصل على حجم القرص

-

وهذة المقاطعة , تعيد لك المساحة الحرة في القرص

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte2zw0.htm

اقتباس
عرض ارقام الكتل الحرة

هل تقصد MCB

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte82y8.htm

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte8980.htm

اقتباس
- نسخ ملفات الى فهرس اخر

والله لا أعلم بوجود مقاطعة واحدة تقوم بكل هذة الخدمة

ولكن , الطريقة التي أعرفها تمر بأكثر من مقاطعة :

1- عرض الملفات في دليل معين

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte838w.htm

2- بعد ذلك إنشاء مجلد جديد

http://www.htl-steyr.ac.at/~morg/pcinfo/ha...ts/inte301c.htm

والخطوة الثالثة والرابعة , قرائة كل ملف في المجلد القديم وإعادة كتابتة في المجلد الجديد

اقتباس
توجد مشكلة اخرى وهي ان الـ label لا يتعرف عليه كمبايلر السي ++

في السي تكتب

goto  err;
.........
........
err:
.........

وبقية نصيحة أخيرة لماذا لا تستخدم الخدمات والدوال المتوفرة لك في لغة السي

فهي تختصر الكثير من المقاطعات

هذا مثال :

#include <stdio.h>
#include <conio.h>
#include <bios.h>
#include <dos.h>
#include <stdlib.h>

char _far diskbuf[512];

void main( int argc, char *argv[] )

{ 
   int count;
   unsigned status = 0, i;
   struct diskinfo_t di;
   struct diskfree_t df;
   unsigned char _far *p, linebuf[17];

   if( argc != 5 )
   {
      printf("  SYNTAX: DISK <driveletter> <head> <track> <sector>");
      exit( 1 );
   }

   if( (di.drive = toupper( argv[1][0] ) - 'A' ) > 1 )
   {
      printf( "Must be floppy drive" );
      exit( 1 );
   }

   di.head   = atoi( argv[2] );
   di.track   = atoi( argv[3] );
   di.sector   = atoi( argv[4] );
   di.nsectors = 1;
   di.buffer   = diskbuf;

   // Get information about disk size.

   if( _dos_getdiskfree( di.drive + 1, &df ) )
      exit( 1 );

   // Try reading disk three times before giving up.

   for( count = 1; count <= 3; count++ )
   {
      status = _bios_disk( _DISK_READ, &di ) >> 8;
      if( !status )
         break;
   }

   // Display one sector.

   if( status )
      printf( "Error: 0x%.2x\n", status );
   else
   {
      for(p=diskbuf, i=0; p < (diskbuf+df.bytes_per_sector); p++)
      {
         linebuf[i++] = (*p > 32) ? *p : '.';
         printf( "%.2x ", *p );
         if( i == 16 )
         {
            linebuf = '\0';
            printf( " %16s\n", linebuf );
            i = 0;
         }
      }
   }

   // Which attempt was successful?

   printf( "\nThat was try #%d.\n", count );

   exit( 1 );

}

-

تم تعديل هذه المشاركة بواسطة jaas في 28 نوفمبر 2004 في 01:48

http://www.jaascois.com

*************************************************

مجموعة مواضيع - إحتراف البرمجة -

ّ~~~~~~~~~~~~~~~~~~~~~~

البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة

/index.php?showtopic=45002

آخر المواضيع :

+- تحليل جرائم الكمبيوتر -+

أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات

ثغرة SMS لأجهزة الجوال Siemens 3568i !

أخطاء وثغرات البرامج العربية !!!

سلسلة مواضيع - أمن وحماية مواقع الويب -

E البرمجة المتقدمة X للملفات التنفيذية E

سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة

**************************************************

<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>

**************************************************

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

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