اطلاعیه

Collapse
No announcement yet.

تبدیل فایل هگز

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    تبدیل فایل هگز

    سلام ،آ‌ من یه فایل هگز از یک تابلو روان دارم دارم که میکروی اون 89C55WD است و نمی دونم برنامش به چه زبانی نوشته شده بوده . چطوری می تونم اونو به زبان c برگردونم .
    در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

    #2
    پاسخ : تبدیل فایل هگز

    نمیشه.
    دنبالش نگرد.
    الهم عجل لولیک الفرج

    دیدگاه


      #3
      پاسخ : تبدیل فایل هگز

      ولی من با برنامه hex to asm برنامه اسمبلی رو بدست آوردم ، یعنی حالا نمیشه این فایل اسمبلی رو به c تبدیل کرد ؟
      در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

      دیدگاه


        #4
        پاسخ : تبدیل فایل هگز

        با سلام
        دوست عزیز می تونی بگی توی فایل هگز مثل برچسب ها با چی مشخص شده اند؟؟؟
        و ایا شناخت اونا برات قابل فهمه یا نه
        چون معمولا توی این جور تبدیل های چند مشکل وجود داره

        دیدگاه


          #5
          پاسخ : تبدیل فایل هگز

          برچسبی وجود نداره !!! من با اسمبلی زیاد آشنایی ندارم ، ببین اینطوری شده !! البته این فقط اولاش هست !
          NOP
          ORG 0000H ;-------------------------------
          LJMP 0030H
          ORG 002BH ;-------------------------------
          LJMP 1562H
          ORG 0030H ;-------------------------------
          LCALL 2D5DH
          MOV 21H , #00H
          MOV 41H , #00H
          MOV 2FH , #00H
          MOV 5EH , #00H
          MOV 89H , #51H
          MOV 8BH , #00H
          MOV 5AH , #00H
          MOV 5EH , #00H
          MOV 3CH , #01H
          MOV 5CH , #01H
          CLR 8EH
          MOV 8BH , #00H
          MOV 8DH , #00H
          MOV 2CH , #03H
          LCALL 1FB8H
          LCALL 2613H
          LCALL 313CH
          LCALL 1FB8H
          LCALL 313CH
          LCALL 2613H
          LCALL 313CH
          LCALL 1FB8H
          LCALL 313CH
          LCALL 2613H
          LCALL 313CH
          LCALL 1FB8H
          LCALL 313CH
          LCALL 2613H
          LCALL 3135H
          MOV 64H , #00H
          MOV 63H , #0CH
          LCALL 31C2H
          MOV 2CH , 65H
          SETB 8EH
          MOV 21H , #00H
          MOV 41H , #00H
          SJMP 11H
          LCALL 1FB8H
          LCALL 2613H
          LCALL 3158H
          SETB 8EH
          MOV 21H , #00H
          MOV 41H , #00H
          LCALL 2D5DH
          MOV A , 8BH
          CJNE A , #00H , 12H
          INC 21H
          MOV A , 21H
          CJNE A , #FFH , F1H
          INC 41H
          MOV A , 41H
          CJNE A , #0AH , EAH
          SETB 8CH
          AJMP 75DH
          LCALL 2666H
          MOV 21H , #00H
          MOV 41H , #00H
          MOV 8BH , #00H
          CLR 8EH
          MOV 5FH , #00H
          MOV A , 6EH
          CJNE A , #2CH , 0BH
          MOV DPTR , #000DH
          LCALL 1175H
          MOV 5BH , #01H
          AJMP 2H
          MOVC A , @A +
          CJNE A , #3CH , 0BH
          MOV DPTR , #0FA0H
          LCALL 1175H
          MOV 5BH , #02H
          AJMP 2H
          MOVC A , @A +
          CJNE A , #4CH , 0BH
          MOV DPTR , #1F40H
          LCALL 1175H
          MOV 5BH , #03H
          AJMP 2H
          MOVC A , @A +
          CJNE A , #8CH , 08H
          MOV DPTR , #30D4H
          LCALL 1175H
          SJMP 7DH
          CJNE A , #B4H , 04H
          SETB 8CH
          AJMP 75DH
          CJNE A , #52H , 02H
          SJMP 02H
          SJMP 1AH
          LCALL 13FAH
          LCALL 3135H
          MOV 8BH , #00H
          MOV 8DH , #00H
          SETB 8EH
          LCALL 2D5DH
          MOV A , 8BH
          CJNE A , #00H , 02H
          در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

          دیدگاه


            #6
            پاسخ : تبدیل فایل هگز

            داخل دستورات فراخونی و پرش اگه دقت بکنی به جای برچسب از ادرس هگز معادل اونا استفاده کرده
            مثلا برنامه به یه جائی می رسه و می خواد زیر برنامه ای رو فراخونی بکنه
            مثلا اینجا
            LCALL 1FB8H
            LCALL 2613H
            LCALL 313CH
            LCALL 1FB8H
            LCALL 313CH
            LCALL 2613H
            LCALL 313CH
            LCALL 1FB8H

            از دستور LCALL استفاده کرده ولی وقتی این برنامه از اسمبلی به هگز تبدیل میشه آدرس معادل محل پرش به جای اون قرار داده میشه
            و وقتی این کد برعکس شده دیگه برچسب تغییر نمی کنه

            فقط موقع خوندن این دوستورات ممکنه یه کم کوچولو براتون زحمت بشه

            موفق باشی

            دیدگاه


              #7
              پاسخ : تبدیل فایل هگز

              اینایی که فرمودین جواب سوال من نبود !!! یه سوال دیگه برامک ایجاد شد :
              1- به نظر شما این برنامه اسمبلی رو حالا اگر دوباره به hex تبدیل کنم جواب میده ؟
              2- این برنامه اسمبلی رو به زبان c میشه برگردوند؟؟؟

              با تشکر و سپاس فراوان
              در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

              دیدگاه


                #8
                پاسخ : تبدیل فایل هگز

                با سلام
                1- برای این سوالتون باید بگم من تا حالا این نوع برنامه رو دوباره کامپایل نکرده ام ولی به احتمال زیاد بله میشه

                2- در مورد این سوالتون باید بگم که سواد برنامه نویسی سی 8051 من در اون حد نیست که به شما این اطمینان رو بدم

                بزرگتر ها باید بهتون جواب بدند

                موفق باشید

                دیدگاه


                  #9
                  پاسخ : تبدیل فایل هگز

                  از کجا باید بفهمیم که مثلاً آدرس 1FB8H که فراخوانی شده کجای برنامه اسمبلی هستش ؟
                  در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

                  دیدگاه


                    #10
                    پاسخ : تبدیل فایل هگز

                    مثلا من می نویسم

                    LACALL REZA

                    در این حالت این دوستور باعث پرش به محلی که با
                    reza:
                    وادامه دستورات

                    مشخص شده برنامه رو ادامه می ده

                    شما اینا رو پیدا بکن و بعد به یک اسم واحد اونا رو تبدیل بکن
                    اگه برنامه رو بذاری بیشتر کمکت می کنم

                    موفق باشی

                    دیدگاه


                      #11
                      پاسخ : تبدیل فایل هگز

                      یعنی الان که 1FB8H گذاشته من باید توی برنامه دنبال همین 1FB8H بگردم یا این 1FB8H به یه جایی داره اشاره میکنه که توی برنامه اسمبلی نیست ؟؟
                      در آدمي عشقي و دردي هست که اگر صد هزار عالم ملک او شود آرام نگيرد. اين خلق به تفضيل در هر پيشه اي تحصيل نجوم و طب و غير ذالک مي کنند و هيچ آرام نمي گيرند زيرا مقصود به دست نيامده است. آخر معشوق را دل آرام مي گويند يعني که دل به وي آرام گيرد پس به غير، چون آرام و قرار گيرد؟ اين جمله خوشي ها و مقصود ها چون نردباني است و چون پايه هاي نردبان جاي اقامت و باش نيست، از بهر گذشتن است. خنک او را که زود تر بيدار و واقف گردد تا راه دراز برو کوته شود و درين پايه هاي نردبان عمر خود را را ضايع نکند.

                      دیدگاه


                        #12
                        پاسخ : تبدیل فایل هگز

                        نوشته اصلی توسط MOHANDES-HASAN
                        اینایی که فرمودین جواب سوال من نبود !!! یه سوال دیگه برامک ایجاد شد :
                        1- به نظر شما این برنامه اسمبلی رو حالا اگر دوباره به hex تبدیل کنم جواب میده ؟
                        2- این برنامه اسمبلی رو به زبان c میشه برگردوند؟؟؟

                        با تشکر و سپاس فراوان
                        دوست عزیز

                        1- بلی
                        2- خیر

                        دیدگاه


                          #13
                          پاسخ : تبدیل فایل هگز

                          نوشته اصلی توسط MOHANDES-HASAN
                          از کجا باید بفهمیم که مثلاً آدرس 1FB8H که فراخوانی شده کجای برنامه اسمبلی هستش ؟
                          سلام دوست عزیز. ظاهرا این Disassembler ی که شما استفاده کردی فقط آدرس زیر برنامه ها رو توی حافظه کد میده. اینطوری تقریباً غیر ممکنه که بتونی برنامع رو ویرایش کنی.(احتیاج به محاسبات وحشتناکی داره )
                          من یه Disassembler دیگه دارم که آدرس ها رو بصورت برچسب نشون میده . اینطوری خیلی راحت تره. اگه خواستی بگو واست بذارم.

                          در ضمن حرف دوستان رو که گفتن نمیشه کد اسمبلی رو به زبان C برگردوند تایید میکنم. (حالا انگار من کی ام که اگه تایید نکنم اعتبار نداره! :mrgreen

                          دیدگاه


                            #14
                            پاسخ : تبدیل فایل هگز

                            سلام.
                            شما از چه برنامه ای برای تبدیل استفاده کردی؟
                            از برنامه من؟
                            یا یه چیز دیگه؟
                            منم یه دیس اسمبلر برای 8051 نوشتم و توی سایت گذاشته بودم.
                            اگه مال من باشه با کلمه ORG آدرس مورد نظر رو نشون داده.
                            ببین.
                            کلا.
                            هیچ موقع برنامه ای که نوشتی و کاپمایبل کردی دقیق مثل برنامه ای که با این دیس اسمبلر ها تولید میشه مطابقت نمیکنند.
                            مثلا این برنامه های دیس سامبلر نمیدونند کدی که نوشته شده دیتا هست یا کد.
                            شاید بجز دستور ORG , هیچ راهنمای کامپایلی هم نداشته باشند
                            مثل DB که برای قرار دادن دیتای تک بایتی توی فلش برنامه.
                            این تازه برای تبدیل هگز به اسمبلیه که خیلی راحته.
                            دیگه تبدیل اینها به فایل سی تقریبا غیر ممکنه.
                            چون معمولا کامپایلر ها بر اساس شرایط کدهای تولیدیشون هم عوض میشه.
                            حالا باز شما توی نت بگرد.
                            اما از نظر من فعلا شدنی نیست.
                            موفق باشید.
                            الهم عجل لولیک الفرج

                            دیدگاه


                              #15
                              پاسخ : تبدیل فایل هگز

                              به قول دوستان
                              تائید میشه

                              دیدگاه

                              لطفا صبر کنید...
                              X