نمایش نتایج 1 تا 16 از 16

نام تاپیک: کسی میدونه مشکله این کد چیه

  1. #1
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    Question کسی میدونه مشکله این کد چیه

    سلام من دارم یه سیستم عامل طراحی میکنم با اسمبلی حالا کسی میدونه مشکل این کد کجاست

    Bits 16
    jmp Main
    ;in = -. out= -

    convert_sector:
    push bx
    push ax
    mov bx, ax
    mov dx, 0
    div WORD [sectorspertrack]
    add dl, 01h
    mov cl, dl
    mov ax, bx
    mov dx, 0
    div WORD [sectorspertrack]
    mov dx, 0
    div WORD [sides]
    mov dh, dl
    mov ch, al
    pop ax
    pop bx
    mov dl, BYTE [bootdrive]
    ret

    sectorspertrack dw 18
    sides dw 0

    reset_floppy:
    mov ah, 0
    mov dl, BYTE[bootdrive]
    int 13h
    jmp load_root

    print:
    lodsb
    cmp al, 0
    je Done
    mov ah, 0eh
    int 10h
    jmp print

    Done:
    ret

    Main:
    cli
    mov ax, 0x0000
    mov ss, ax
    mov sp, 0xFFFF
    sti

    mov ax, 07C0h
    mov ds, ax
    mov es, ax

    mov [bootdrive], dl


    mov bx, buffer
    mov cl,2
    mov ch,0
    mov dh,1
    mov ah,2
    mov al,14
    pusha

    load_root:
    int 13h
    jnc loaded_root
    call reset_floppy
    jmp load_root

    loaded_root:
    popa
    mov di, buffer
    mov cx, 224
    mov ax, 0
    search_loop:
    push cx
    pop dx
    mov si, filename
    mov cx, 11
    rep cmpsb
    je found_file
    add ax, 32
    mov di, buffer
    add di, ax
    push dx
    pop cx
    loop search_loop
    int 18h


    found_file:
    mov ax, WORD [di+15]
    mov WORD [FirstSector], ax

    mov bx, buffer
    call convert_sector
    mov ah, 2
    mov al, 9
    pusha
    load_fat:
    int 13h
    jnc loaded_fat
    call reset_floppy
    jmp load_fat

    loaded_fat:
    mov ah, 2
    mov al, 1
    push ax

    load_file_sector:
    mov ax, WORD [FirstSector]
    mov ax, 31
    call convert_sector
    mov ax, 2000h
    mov es, ax
    mov bx, WORD [pointer]

    pop ax
    push ax

    int 13h
    jnc calculate_next_sector
    call reset_floppy
    jmp load_file_sector

    calculate_next_sector:
    mov ax, [FirstSector]
    mov dx, 0
    mov bx, 6
    mul bx
    mov bx, 4
    div bx
    mov si, buffer
    mov si, ax
    mov ax, WORD [si]

    or dx, dx
    jz even

    odd:
    shr ax, 4
    jmp short next_sectors_caculate

    even:
    and ax, 0FFFh

    next_sectors_caculate:
    mov WORD [FirstSector], ax
    cmp ax, 0FF8
    jae end
    add WORD [pointer], 512
    jmp load_file_sector

    end:
    pop ax
    mov dl, BYTE [bootdrive]
    jmp 2000h:0000h


    cli
    hlt

    bootdrive db 0
    msg db "Hello world!", 0
    filename db "KERNEL BIN"
    FirstSector dw 0
    pointer dw 0


    times 510-($-$$) db 0

    dw 0xAA55

    buffer: ;byte 513


    این ارور رو میده

    boot.asm:153: error: expression syntax error

  2. #2
    کاربر دائمی آواتار masoud.8086
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    نيشابور
    پست
    230

    نقل قول: کسی میدونه مشکله این کد چیه

    سلام این کد مشکل نداره من با MASM وTASM ازش OBJ ساختم
    ورژن کامپایلرتو عوض کن امکان داره این ارور از اون باشه
    موفق باشی.

  3. #3

    نقل قول: کسی میدونه مشکله این کد چیه

    در خط 153 که خطا داده، انتهاش پسوند h نداره
    موفق باشی

  4. #4
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    نقل قول نوشته شده توسط xman_1365_x مشاهده تاپیک
    در خط 153 که خطا داده، انتهاش پسوند h نداره
    موفق باشی
    میشه خط 153 درست شدش رو واسم بزاری من تازه شروع به یادگیری اسمبلی کردم

  5. #5
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    یعنی هیچ کس نمیدونه مشکل این کد چیه

  6. #6
    کاربر دائمی آواتار masoud.8086
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    نيشابور
    پست
    230

    نقل قول: کسی میدونه مشکله این کد چیه

    سلام دوست عزیز این کد مشکل نداره اگر خط 153 ارور میده بخاطر اینکه آخر خط باید h بذاری که به معنای هگز هست البته در بعضی کامپایلرها ارور میده در بعضی نمیده بعدشم ناراحت نشیا جسارتا به قول خودت اگه داری سیستم عاملو طراحی میکنی پس ارور به این سادگی رو باید بدونی چیه؟؟ولی پایین نوشتی من تازه شروع کردم به یادگیری...بیبخیال.. اگه میخوای اسمبلی یاد بگیری باید از پایه قوی باشی(مبناها) بعد اول روی دستورات مسلط بشی و این فقط با تمرین بدست میاد کتاب اسمبلی نیکمهر منبع خوبیا واسه یادگیری اگه سوالی داشتی من در خدمتم..
    اینم کد خطا cmp ax, 0FF8 که درستش میشه cmp ax,0FF8h چندتا تایپیک قبل این یه تایپیک به نام ابر پروژهای اسمبلی و یکی دیگه موازی کاری در اسمبلی هست برنامه هاش کاره منه ی نگا بنداز..موفق باشی..

  7. #7
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    نقل قول نوشته شده توسط masoud.8086 مشاهده تاپیک
    سلام دوست عزیز این کد مشکل نداره اگر خط 153 ارور میده بخاطر اینکه آخر خط باید h بذاری که به معنای هگز هست البته در بعضی کامپایلرها ارور میده در بعضی نمیده بعدشم ناراحت نشیا جسارتا به قول خودت اگه داری سیستم عاملو طراحی میکنی پس ارور به این سادگی رو باید بدونی چیه؟؟ولی پایین نوشتی من تازه شروع کردم به یادگیری...بیبخیال.. اگه میخوای اسمبلی یاد بگیری باید از پایه قوی باشی(مبناها) بعد اول روی دستورات مسلط بشی و این فقط با تمرین بدست میاد کتاب اسمبلی نیکمهر منبع خوبیا واسه یادگیری اگه سوالی داشتی من در خدمتم..
    اینم کد خطا cmp ax, 0FF8 که درستش میشه cmp ax,0FF8h چندتا تایپیک قبل این یه تایپیک به نام ابر پروژهای اسمبلی و یکی دیگه موازی کاری در اسمبلی هست برنامه هاش کاره منه ی نگا بنداز..موفق باشی..
    این کتابی که گفتید رو دانلود کردم. فیلم های اموزش اسمبلی سراغ دارید؟ زیاد تو گوگل سرچ کردم ولی پیدا نکردم.

  8. #8
    کاربر دائمی آواتار masoud.8086
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    نيشابور
    پست
    230

    نقل قول: کسی میدونه مشکله این کد چیه

    سلام اره فیلم آموزش اسمبلی زیاد نیس اونم به فارسی انشاا. در صدد هستم خودم هم ی کتاب اموزش اسمبلی بصورتpdf و هم آموزش فیلم درست کنم (البته اجازشو استادم داده)قضیه کتاب که اینقد سرم شلوغه فعلا منتفیه ولی فیلمو قول میدم تو آینده نزدیک اماده کنم بصورت جلسه ای انشاا.. فعلا درگیر تایپیک کرک نرم افزار با اسمبلیم دارم آماده میکنم ولی سوالی داشتی حتما بپرس مطمین باش کمکت میکنم
    در ضمن وبلاگ منم www.emu8086.mihanblog.com برنامه های ساده توش هست ی سر بزن.. دیگه تو تایپیک پیام نذاز پیام خصوصی بفرست اگه کاری داشتی

  9. #9
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    سلامن یه مشکل دیگر دارم بوت لودری که ساختم بوت نمیشه

    من با دستورات زیر اونو رو فایل imge رایت میکنم و به نرم افزار Qemu پاس میدم

    dd if=boot.bin of=boot.img bs=512


    qemu -fda boot.img


    در اخر کار نرم افزار Qemu خطا No bootable found رو میده

  10. #10
    کاربر دائمی آواتار masoud.8086
    تاریخ عضویت
    مرداد 1393
    محل زندگی
    نيشابور
    پست
    230

    نقل قول: کسی میدونه مشکله این کد چیه

    فکر کنم فایل مذکور در حفاظت سیستم عامل هست و شما نمیتونی در محیط o /s توش چیزی بنویسی..و خطای شما به این معناست که نمی تونه بوت تیبلو پدا کنه.. موفق باشی.

  11. #11
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    چگونه باید فایل رو در نرم افزار Qemu تست کنم.آیا حتما باید فلاپی داشته باشم؟ کامپیوتر من فلاپی ساپورت نمیکنه باید چیکار کنم. من قبل از کامل کردن بوت لودر تست میکردم و متنی رو که میخواستم نمایش میداد

  12. #12

    نقل قول: کسی میدونه مشکله این کد چیه

    دستوری که برای qemu استفاده کردین مشکلی نداره. پشتیبانی نکردن فلاپی روی سیستم شما هم ارتباطی با qemu نداره چون همه چیزو شبیه سازی میکنه. اگر نخواین از فلاپی استفاده کنید به جای fda- می تونید hda- وارد کنید.

    شاید امیجی که درست کردین ایراد داره با یک هگز ادیتور مثل hexdump تو لینوکس یا HxD تو ویندوز چک کنید امیجی که ایجاد شده مشکلی نداشته باشد.

  13. #13
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    این خروجی hexdump هست


    0000000 45eb 5053 c389 00ba f700 2d36 8000 01c2
    0000010 d188 d889 00ba f700 2d36 ba00 0000 36f7
    0000020 002f d688 c588 5b58 168a 0112 12c3 0000
    0000030 b400 8a00 1216 cd01 eb13 ac2f 003c 0674
    0000040 0eb4 10cd f5eb fac3 00b8 8e00 bcd0 ffff
    0000050 b8fb 07c0 d88e c08e 1688 0112 00bb b102
    0000060 b502 b600 b401 b002 600e 13cd 0573 c0e8
    0000070 ebff 61f7 00bf b902 00e0 00b8 5100 be5a
    0000080 0120 0bb9 f300 74a6 830e 20c0 00bf 0102
    0000090 52c7 e259 cde8 8b18 0f45 2ba3 bb01 0200
    00000a0 5fe8 b4ff b002 6009 13cd 0573 82e8 ebff
    00000b0 b4f7 b002 5001 2ba1 b801 001f 43e8 b8ff
    00000c0 2000 c08e 1e8b 012d 5058 13cd 0573 60e8
    00000d0 ebff a1e3 012b 00ba bb00 0006 e3f7 04bb
    00000e0 f700 bef3 0200 c689 048b d209 0574 e8c1
    00000f0 eb04 2503 0fff 2ba3 3d01 0ff8 0873 0681
    0000100 012d 0200 b0eb 8a58 1216 ea01 0000 2000
    0000110 f4fa 4800 6c65 6f6c 7720 726f 646c 0021
    0000120 454b 4e52 4c45 2020 4942 004e 0000 0000
    0000130 0000 0000 0000 0000 0000 0000 0000 0000
    *
    00001f0 0000 0000 0000 0000 0000 0000 0000 aa55
    0000200


    از کجا بفهمم مشکلی داره یا نه

  14. #14

    نقل قول: کسی میدونه مشکله این کد چیه

    برای فهمیدنش کدهارو با سورست مقایسه کن مثلا دو بایت آخر 55AA هست (امضای آخر mbr) آپکدهای اولتم EB 45 که همون jmp Main میشه تا اینجا مشکلی نیست. فقظ این ایمیج اگر فقط همینه یعنی همین ۵۱۲ بایت ایراد داره. نمی دونم یک بار خوندینش ببینین چکار میکنه یا فقط کپی کردنینش

    این کد یکسری افستها رو از دیسک (فایل ایمیج) می خونه و چون وجود نداره اررور میده. اگر این ایمیج قراره یه فلاپی باشه باید به اندازه یک فلاپی هم فضا بهش اختصاص بدین.

  15. #15
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    خروجی hexdump رو با سورس مقایسه کردم مشکلی نداشت میشه فایل ها رو تو یه بخش از بنویسی و با کامپیوتر واقعی تست کنی مثلا اطلاعات رو داخل sda3 بنویسم
    اینجوری
    dd if=boot.bin of=/dev/sda3 bs=1440

    update-grub

  16. #16
    کاربر تازه وارد آواتار tanzadeh7
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    بوشهر
    پست
    98

    نقل قول: کسی میدونه مشکله این کد چیه

    کسی نمیدونه مشکل این بوت لودر چیه که بوت نمیشه

تاپیک های مشابه

  1. پاسخ: 10
    آخرین پست: جمعه 29 شهریور 1392, 22:23 عصر
  2. کسی میدونه اسم این پروتکل چیه
    نوشته شده توسط .:saeed:. در بخش تالار های مرتبط با شبکه و امنیت
    پاسخ: 0
    آخرین پست: دوشنبه 28 مرداد 1392, 18:08 عصر
  3. سوال: کسی میدونه ایراد این کد چیه ؟؟
    نوشته شده توسط Saeed0beeaS در بخش C#‎‎
    پاسخ: 10
    آخرین پست: جمعه 24 خرداد 1392, 15:51 عصر
  4. کسی میدونه معنی این کد چیه و چرا خطا میده؟
    نوشته شده توسط hgh.just.hony در بخش طراحی وب (Web Design)
    پاسخ: 1
    آخرین پست: دوشنبه 12 تیر 1391, 11:02 صبح
  5. سوال: کسی میدونه مشکل این برنامه چیه ؟
    نوشته شده توسط saman_hm در بخش C#‎‎
    پاسخ: 1
    آخرین پست: جمعه 18 تیر 1389, 05:52 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •