اين error در اسمبلي چيه؟

در اين بخش سوالات خودتون رو مطرح كنيد
موضوع جدید ارسال پست
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

اين error در اسمبلي چيه؟

پست توسط venus »

your program caused a divide overflow error


venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

اين اشكال رو بعد از ران شدن ميگيره. :(
mahdi
مدیر سایت
مدیر سایت
پست: 837
تاریخ عضویت: سه‌شنبه 3 تیر 1382, 12:00 am
تشکر شده: 1 دفعه
تماس:

پست توسط mahdi »

سلام
كد رو لطف كنيد.
موفق باشيد
مهدي
مردي از دياري ديگر

http://irbook.ir
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

اينم از كد
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

کد: انتخاب همه

stacksg segment stack 'stack'
        dw 32 dup(?)
stacksg ends
;----------------------------------
codesg segment 'code'
       assume ss:stacksg,cs:codesg
Main   proc far
        call clear
                           :back1
       call cursor
       call date
       mov al,dh
       call displa1
       call colon
       mov al,dl
       call displa1
       call colon
       mov al,cl
       call displa1
       jmp back1
       mov ax,4c00h
       int 21h
Main   ENDP
        
;------------clear monitor-----------
CLEAR  proc near
       push bx
       mov ax,0600h
       mov cx,0000h
       mov dx,184fh
       mov bh,0eh
       int 10h
       pop bx
       ret
CLEAR  ENDP
;------------set cursor on 12,40------
CURSOR proc near
       push dx
       mov ah,02h
       mov bh,00h
       mov dl,40
       int 10h
       pop dx
       ret
CURSOR ENDP
;-----------get date------------------
DATE proc near
     mov ah,2ah
     int 21h
     ret
DATE ENDP
;-----------display . on monitor-----
COLON proc near
      push dx
      mov dl,'.'
      mov ah,02h
      int 21h
      pop dx
      ret
COLON ENDP
;---------display numbers on monitor-----
DISPLA1 proc near
        push dx
;---------changing binary to ascii-------
        mov bl,10
        mov bh,00h
        div bl
        mov bx,ax
        add bl,30h
;--------showing ascii numbers on monitor-----
        mov ah,02h
        mov dl,bl
        int 21h
        mov dl,bh
        int 21h
        pop dx
        ret
DISPLA1 ENDP
CODESG  ENDS
        END MAIN
آخرین ويرايش توسط 1 on venus, ويرايش شده در 0.
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

البته يه ذره !!!!!! طولانيه
همينجور هم كه معلومه اين قراره تاريخ سيستم رو بگيره و روي مونيتور نشون بده
mahdi
مدیر سایت
مدیر سایت
پست: 837
تاریخ عضویت: سه‌شنبه 3 تیر 1382, 12:00 am
تشکر شده: 1 دفعه
تماس:

پست توسط mahdi »

برنامه رو Debug كردين؟
چون من الان اسمبلر روسيستم نيست. اگه اينكار رو كردين بگين كدوم خط به خطا ميخوره وگرنه اسمبلر نصب كنم
مهدي
مردي از دياري ديگر

http://irbook.ir
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

نه .اما من وقتي اين فايل رو EXE كردم نه severe error داشت نه warning
mahdi
مدیر سایت
مدیر سایت
پست: 837
تاریخ عضویت: سه‌شنبه 3 تیر 1382, 12:00 am
تشکر شده: 1 دفعه
تماس:

پست توسط mahdi »

سلام
بله درسته برنامه شما نه خطاي نوشتاري داره و نه Warning . برخي خطاها زمان اجرا رخ ميدهند مانند خطاي تقسيم بر صفر. اين گونه خطاها بعد از اجراي برنامه اتفاق مي افتند و براي يك برنامه نويس بخش مشكل كار پيشگيري و درمان اينگونه خطا هاست.
در Debug شما خط به خط برنامه رو اجرا ميكنيد محتوي رجيستر ها و خانه هاي حافظه را چك ميكنيد سپس ميتوانيد مشكل برنامه را پيدا نماييد.
موفق باشيد
مهدي
مردي از دياري ديگر

http://irbook.ir
venus
کاربر معمولی
کاربر معمولی
پست: 74
تاریخ عضویت: یک‌شنبه 11 آبان 1382, 12:00 am

پست توسط venus »

وقتي كه اين فايل رو اجرا ميكنم اين ارور رو ميده توي ديباگ هم نميدونم چرا باز نميشه در صورتي كه آدرسي كه بهش ميدم درسته :(
mahdi
مدیر سایت
مدیر سایت
پست: 837
تاریخ عضویت: سه‌شنبه 3 تیر 1382, 12:00 am
تشکر شده: 1 دفعه
تماس:

پست توسط mahdi »

البته چيزي كه من حدس ميزنم اينه‌:
يك جاي برنامه شما داره تقسيم بر صفر انجام ميشه. شما فقط يك خط تون از فرمان div استفاده كرديد. اين مساله تقسيم بر صفر رو چك كنيد.
موفق باشيد
مهدي
مردي از دياري ديگر

http://irbook.ir
موضوع جدید ارسال پست

بازگشت به “Assembly”