تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 12

نام تاپيک: خواندن خط به خط یک فایل txt در اسمبلی

  1. #1
    آخر فروم باز mrmmnb's Avatar
    تاريخ عضويت
    Nov 2006
    پست ها
    2,663

    پيش فرض خواندن خط به خط یک فایل txt در اسمبلی

    دوستان یه فایل تکست (با اسم دلخواه مثلا f1.txt ) که در هر خط یک عدد ممیز شناور هست میخوام برنامه به زبان اسمبلی(تحت masm32 ) بنویسم که این فایل رو بگیره بعد عدد ها رو مرتب کرده به ترتیب صعودی یا نزولی توی یه فایل دیگه مثلا f2.txt ذخیره کنه حالا من نمیدونم چطوری باید خط به خط این فایل رو بخونم که عدد ها ازش استخراج بشه
    یه راه بلدم که کل فایل رو میخونه اما تک تک باید چیکار کرد؟
    اصلا راه دیگه ای داریم که بشه مرتب کرد؟
    من میخوام خط به خط اعداد رو بخونم توی یه ارایه ذخیره کنم ارایه رو مرتب کنم دوباره یکی یکی توی یه فایل دیگه ذخیره کنم مشکلم همون خوندن خط به خط فایل ورودی هست

  2. #2
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    خوب میتونین از دستورات fopen و fscanf برای خودندن فایل استفاده کنی، تابع fscanf خط به خط می خونه تا به انتهای فایل برسه

  3. #3
    آخر فروم باز mrmmnb's Avatar
    تاريخ عضويت
    Nov 2006
    پست ها
    2,663

    پيش فرض

    میشه در باره Fscanf توضیح بدی کلا تابعش چیا میخواد یا اصلا کل تابعش رو بنویسی؟

  4. #4
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    این تابع اینجوری هست
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اینجا رو ببین کلی توضیح داده، البته قبلش باید fopen رو استفاده کنی
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اگه قبلا C کار کرده باشین استفادشون براتون زیاد سخت نباید باشه
    کتابخانه msvcrt.lib هم باید اضافه کنید به برنامتون به اضافه تعریف توابع fopen و fscanf و ... اینا تو هدر msvcrt.inc باید باشه،
    کدش یه همچین چیزی میشه، البته کامل حال نداشتم بسازم
    اینجا fscanf اینقدر از فایل می خونه تا به انتهای فایل برسه
    این کد برای گرفتن 10 تا عدد هست بخوای باید اونجایی که arr رو تعریف کردم تغییر بدی
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ، البته کاری که می خواین انجام بدین بدون استفاه از اینا پیچیده تر از این میشه
    اگه کار نکرده باشین احتمالا همین کد هم یکم ممکنه براتون مبهم باشه،
    به هر حال اگه جاییش سوال دارین بگن اگه بدون کمک می کنم

  5. #5
    آخر فروم باز mrmmnb's Avatar
    تاريخ عضويت
    Nov 2006
    پست ها
    2,663

    پيش فرض

    اقا سلام
    من هر کاری کردم نشد
    اون fopen و fclose به شکلی که شما نوشتید اصلا نیست(البته توی masm32 منظورمه) من رفتم دیدم یه ماکرو هایی هست توی masm32 که اینجوری از این دو دستور استفاده میکنه:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته این توی یکی از مثال ها خود برنامه بود خود ماکروش رو گشتم اینجوری بود(کل ماکروهایی که دمورد کار با فایل ها بود اینا بودش):
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    کل help رو هم زیر رو کردم در مورد توابع که برا کار با فایل هاست هیچی پیدا نکردم فقط یه چند تایی که توی ماکرو ها هست میشه فهمید چطوری هست بقیش رو نتونستم پیدا کنم مثلا همین fscsnf توی اون فایلی که شما گفته بودید بودش ولی دیگه توی اون ننشوته چطوری نوشته میشه و چیا رو باید بهش ارسال کرد ممنون میشم کمک کنی اینو درست کنم
    با تشکر

  6. #6
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    سلام
    اون ماکرو ها منظروم نبود ، اون تابع هایی که من گفتم تو msvcrt.inc تعریف میشن تو پوشه include نگاه کنید اگه نیست این فایل که میزارم دانلود کنید
    فایل msvcrt.inc تو پوشه include و فایل msvcrt.lib رو هم تو پوشه lib بریزین

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حالا میتونین اونجوری که گفتم استفاده کنید.

  7. #7
    آخر فروم باز mrmmnb's Avatar
    تاريخ عضويت
    Nov 2006
    پست ها
    2,663

    پيش فرض

    من اون تابع ها رو اونجوری که شما گفتید استفاده کردم ولی ارور داد که این چیه نوشتی یعنی منظور ارورش این بود که نفهمیده این یک تابع هست

  8. #8
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    احتمالا اون دو تا فایلی که دادم به سورستون اضافه نکردین، به این شکل باید تعریف بشه
    البته قبلش تو پوشه هایی که گفتم باید ریخته شده باشند،
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    باز اگه نشد مسیر کامل فایل رو بدین، مثل این

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    مثاللی که تو پست قبل دادم رو کاملتر کردم که قابل کامپایل باشه
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    تست کنید اگه باز ایراد گرفت متنشو اینجا بزارین
    Last edited by hoax3r; 20-01-2010 at 09:49.

  9. #9
    آخر فروم باز mrmmnb's Avatar
    تاريخ عضويت
    Nov 2006
    پست ها
    2,663

    پيش فرض

    من که گفتم نمیشه من C بلد نیستم ولی هر چی هست طرز استفاده این تابعهایی که شما میگید توی masm32 با c فرق میکنه توی اون ماکرو هایی که بالا نوشتم معلومه چطوری استفاده کرد مثلا برایبازکردن فایل یه ماکرویی هست که اون اسمش fopen هست و فقط یه اسم فایل رو میگیره و تازه توی اون از تابعی با نام CreateFile استفاده کرده! حتما تابعی به نام fopen وجود نداره که میشه ماکرویی با این نام ساخت
    اینم عکس ارورری که داد


    دقیقا به همون سه تا تابع گیر داده و نفهمیده چی هست ادرس msvcrt.inc وmsvcrt.lib رو به هر دو روش دادم و فرقی نکرد

  10. #10
    پروفشنال hoax3r's Avatar
    تاريخ عضويت
    Oct 2007
    پست ها
    699

    پيش فرض

    اون ماکروهارو که اون کسی که بسته masm32 رو سر هم کرده ساخته تا اونایی که سی کار کردن از اونا به جای CreateFile و ... استفاده کنند
    کاری به توابعی که من میگم نداره البته اگه macros.asm رو تو سورستون اضافه نکنی، توابعی که گفتم تو هر زبان میشه ازش استفاده کرد
    اون کد هم که من دادم تو masm تست کردم کار میکنه

    این اررور ها موقع اسمبلر کردن پیش میاد معلومه فایل msvcrt.inc رو نخونده ، چون تعریف اون توابع تو این فایله
    شما اون دو تا فایل رو تو پوشه هایی که گفتم ریختین دیگه؟
    msvcrt.inc در c:\masm32\include
    msvcrt.lib در c:\masm32\lib

    این فایل فشرده رو بگیرین بریزین تو یه پویشه بعد make.bat رو بزنید ببینید فایل exe میسازه
    اگه نسازه masm تون احتمالا ایراد پیدا کرده

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by hoax3r; 20-01-2010 at 17:19.

صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •