صفحه 1 از 6 12345 ... آخرینآخرین
نمایش نتایج: از شماره 1 تا 10 از مجموع 57
Like Tree5نفر پسندیدند

موضوع: مشکل در جمع اعداد

  1. #1
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    مشکل در جمع اعداد

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;code segment;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    code segment
    main proc far
    assume cs:code,ds:data,ss:stack
    mov ax,seg data
    mov ds,ax
    ;;;;;;;;;;;;Get Current Graphic Mode;;;;;;;;;
    mov ah,0fh
    int 10h
    mov ah,0
    push ax
    ;;;;;;;;;;;;new Graphic Mode;;;;;;;;;;;;;;;;;
    mov ah,00h
    mov al,12h
    int 10h
    CALCULATORSHAPE
    ;;;;;;;;;Show Mouse;;;;;;;;;;;;;;
    mov ax,01h
    int 33h
    mouse:
    mov ax,03h;; mode grafici
    int 33h



    pushreg
    delay 500
    popreg


    cmp bx,0001h
    jne mouse
    ;;;;;;;;;;;READ PIXEL UNDER CURSOR;;;;;;;;;

    dec cx
    mov ah,0dh
    mov bh,0
    int 10h
    inc cx
    ;;;;;;;;;SEE WHICH BUTTON(COLOR) WAS CLICKED;;;


    cmp al,1
    je one

    cmp al,2
    je two

    cmp al,3
    je three

    cmp al,4
    je four


    cmp al,5
    je five


    cmp al,6
    je six


    cmp al,7
    je seven


    cmp al,8
    je eight


    cmp al,10
    je nine1


    cmp al,11
    je zero1


    cmp al,13;;;;;;
    call subsign ;
    jmp mouse ;
    ;
    ;
    cmp al,14 ;
    call mulsign ;
    jmp mouse ;
    ;
    ;
    cmp al,15 ;
    call divsign ;;;;;;;;;>> ba seda kardane tavabe miad alamat gozari anjam midahad
    jmp mouse ;
    ;
    cmp al,12 ;
    call addsign ;
    jmp mouse ;
    ;
    ;
    cmp al,9 ;
    call equalsign ;
    jmp mouse;;;;;;


    nine1:
    jmp nine
    zero1:
    jmp zero



    ;--------------------------

    one:
    mov digit,'1'
    call getdigit
    jmp mouse
    ;----------------------------

    two:
    mov digit,'2'
    call getdigit
    jmp mouse
    ;---------------------------

    three:
    mov digit,'3'
    call getdigit
    jmp mouse
    ;---------------------------



    four:
    mov digit,'4'
    call getdigit
    jmp mouse
    ;--------------------------


    five:
    mov digit,'5'
    call getdigit
    jmp mouse
    ;----------------------------


    six:
    mov digit,'6'
    call getdigit
    jmp mouse
    ;----------------------------



    seven:
    mov digit,'7'
    call getdigit
    jmp mouse
    ;----------------------------




    eight:
    mov digit,'8'
    call getdigit
    jmp mouse
    ;----------------------------




    nine:
    mov digit,'9'
    call getdigit
    jmp mouse
    ;----------------------------


    zero:
    mov digit,'0'
    call getdigit
    jmp mouse
    ;---------------------------


    exit:


    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;function;;;;;;;;;;;;;;;;;;;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


    ;=================add==============;;;;;;;;???????? mogheyee ke mikhad be adad tabdil beshe khata migire ???????
    do_add proc ;
    atoi string ;? ;
    mov bx,ax ;
    atoi string2 ;? ;
    add ax,bx ;
    itoa c,bx ;? ;
    gotoxy 8,19 ;
    ret ;
    do_add endp ;
    ;
    ;================sub=============== ;
    ;
    do_sub proc ;
    ret ;
    do_sub endp ;
    ;
    ;===============mul================ ;
    ;;;;;;>> amaliathaye asli bayad dar in ghesmate badane neveshte shavad
    do_mul proc ;
    ret ;
    do_mul endp ;
    ;
    ;==============div================= ;
    ;
    do_div proc ;
    ret ;
    do_div endp ;
    ;==================================;;;;;;;;




    ;=============addsign==============;;;;;;;;
    ;
    addsign proc ;
    mov status,2 ;
    mov operator,'+' ;
    mov counter,0 ;
    addsign endp ;
    ;
    ;=============subsign============== ;
    ;
    subsign proc ;
    mov status,2 ;
    mov operator,'-' ;
    mov counter,0 ;
    ret ;
    subsign endp ;
    ;
    ;=============mulsign============== ;
    ;
    mulsign proc ;
    mov status,2 ;
    mov operator,'*' ;;;;;;;;;>> anjame amaliate alamat gozari
    mov counter,0 ;
    ret ;
    mulsign endp ;
    ;
    ;===============divsign============ ;
    ;
    divsign proc ;
    mov status,2 ;
    mov operator,'%' ;
    mov counter,0 ;
    ret ;
    divsign endp ;
    ;
    ;==============equalsign=========== ;
    ;
    equalsign proc ;
    call result ;
    ret ;
    equalsign endp ;
    ;
    ;==================================;;;;;;;;




    ;================result============;;;;;;;;
    ;
    result proc ;
    cmp operator,'+' ;
    je do_add1 ;
    ;
    cmp operator,'-' ;
    je do_sub1 ;
    ;
    cmp operator,'*' ;
    je do_mul1 ;
    ;
    cmp operator,'%' ;
    je do_div1 ;
    ;
    do_add1: ;;;;;;;;>> amaliate nahayee
    call do_add ;
    jmp exit_proc ;
    ;
    do_sub1: ;
    call do_sub ;
    jmp exit_proc ;
    ;
    do_mul1: ;
    call do_mul ;
    jmp exit_proc ;
    ;
    do_div1: ;
    call do_div ;
    jmp exit_proc ;
    ;
    exit_proc: ;
    ret ;
    result endp ;
    ;
    ;
    ;==================================;;;;;;;;
    ;==============end code=============

    code ends
    end main


    ویرایش توسط NIIT : 11th August 2011 در ساعت 11:07 PM دلیل: ویرایش :متن خطا اضافه شد .

  2. #2
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    سلام .
    توضیح بیشتر؟!
    دقیقا به چه مشکلی بر میخورید ؟ فقط تو جمع کردن مشکل دارید ؟


    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  3. #3
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    مشکل در جمع اعداد

    در قسمت جمع دچار مشکل شدیم، ما وقتیکه عملیات جمع بصورت لیبل بود کد مورد نظر رو نوشتیم اما در این جایگاه جواب نمیده ، خطاهایی که بوجود اومد رو گرفتیم اما فکر نکنم با این دو خط کد برنامه بتونه دو تا رشته رو با هم جمع کنه ،ممنون میشم راهنمایی بفرمایید ، بااحترام


    ;=================add==============;;;;;;;;
    do_add proc ;
    ;atoi string ;
    ;atoi string2 ;
    mov ax,string ;
    add ax,string2 ;
    ;gotoxy 8,20 ;
    ;itoa y,ax ;
    ;
    ;mov ah,09h ;
    ;lea dx,y ;
    ;int 21h ;
    ;
    ;mov ah,01h ;
    ;int 21h ;;getch ;
    ret ;
    do_add endp ;


    ویرایش توسط NIIT : 11th August 2011 در ساعت 02:09 AM دلیل: بدلیل مختصر بودن توضیحات

  4. #4
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    خیلی خب . میشه متن ارورهاتون روهم بنویسید ؟
    چیزی که مشخصه عین روز این هست که کد بالا به هیچ عنوان درست نیست . و همونطور که خودتون هم گفتید شما نمیتونید دو تا رشته رو با هم جمع کنید . اول باید رشته ها رو تبدیل به عدد متناظرشون کنید و بعد با استفاده از دستور Add اون دو عدد رو با هم جمع کنید .
    برای تبدیل هم از همون Atoi که کامنتش کردید میتونید استفاده کنید . بعد از استفاده از این دستور عدد مورد نظر شما تو ثبات AX قرار میگیره و میتونید ازش استفاده کنید.
    اشتباه شما تو دستور بالا این هست . که قبل از اینکه مقدار عدد اول که تو ثبات AX قرار گرفت رو یکجای دیگه ذخیره کنید بلافاصله اومدید و عدد دورم رو تبدیل کردید! و اینطور مقدار عدد اول از بین رفته و در نتیجه جمع درست کار نخواهد . کرد . شما بجای دستور بالا باید اینطور مینوشتید :



    ATOI STRING
    MOV BX,AX
    ATOI STRING2
    ADD BX,AX ;NUM1 = NUM1 + NUM2


    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  5. #5
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    Question مشکل در استفاده از جمع اعداد و استفاده از atoi

    1. ما متد جمع اعداد رو براساس قواعد تعین شده نوشتیم اما جواب نمیده، باید دو رشته مربوطه رو به عدد تبدیل کنیم و این کار باید از طریق atoi انجام بشه ما این کار رو میکنیم اما به برنامه خطا میده ، الان سوالی که برام پیش اومده اینه که این تبدیل رشته به عدد رو باید کجای برنامه بهش گفت ؟ ، در داخل متد وقتی این تبدیل انجام میشه بهش خطا میگیره ، ممنون میشم توضیح بدین. بااحترام

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


    ;=================add==============;??? mogheyee ke mikhad be adad tabdil beshe khata migire ???????
    do_add proc

    ;atoi string
    mov bx,ax

    ;atoi string2
    add ax,bx

    gotoxy 8,19
    mov c,ax
    ;itoa c,ax

    ;mov ah,09h
    ;lea dx,y
    ;int 21h

    mov ah,01h
    int 21h ;;getch
    ret
    do_add endp



    ویرایش توسط NIIT : 11th August 2011 در ساعت 11:12 PM

  6. #6
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


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

    حالا بریم سر اصل مطلب .
    من ازتون خواسته بودم Error که میگیرید رو اینجا بنویسید . الان مشخص نیست خطایی که دارید ازش صحبت میکنید در زمان کامپایل اتفاق می افته براتون یا اینکه یه خطای منطقی هست و مثلا نتیجه جمع اون چیزی که میخوایید نیست !

    خب بریم سر کدتون .
    این کدی که قرار دادید یه مشکل منطقی داره . و اون هم مربوط میشه به موقعی که شما قصد دارید نتیجه جمع رو وارد متغیر C کنید . یعنی اینجا
      gotoxy    8,19              
    mov c,ax
    ;itoa c,ax


    اول اینکه اون دستور MOV که نوشتید بی فایده و زائد هست .

        mov    c,ax     


    چرا که با استفاده از دستور بعدیش یعنی دستور ITOA مقدار موجود در AX به رشته تبدیل شده و وارد متغییر C میشه . و شما فقط به همین دستور نیاز دارید .
    حالا یک خط بالاترش یعنی خط 10 که نوشتید :

        gotoxy    8,19   

    این ماکرو مقدار AX شما رو خراب میکنه . اگه دوباره به تعریف این ماکرو نگاه کنید میبینید که AH داخل اون داره مقدار دهی میشه .
    برای اینکه مقدار AX که حاوی نتیجه جمع دو عدد ماست قبل از تبدیل شدن خراب نشه میتونیم این کارو انجام بدیم .

              
    ATOI STRING
    MOV BX,AX
    ATOI STRING2
    ADD AX,BX
    ITOA C,AX
    GOTOXY 8,19


    GOTOXY فقط برای انتقال مکان نما استفاده میشه و عموما هم این کار رو برای چاپ کردن یک چیزی استفاده میکنن مثل نمونه شما . بنابر این خیلی راحت میتونید دقیقا بلافاصله همونجایی که میخوایید رشتتون رو چاپ کنید دقیقا قبلش از این GOTOXY استفاده کنید .

    حالا باز اگه ارور دیگه ای میده لطفا کنید حتما ارور رو بنویسید که بدونم چیکار دارید میکنید .

    NIIT این نویسه را میپسندد.
    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  7. #7
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط NIIT نمایش پست ها
    در متد جمع دچار مشکل شدم ، همونطور که گفتین اون کدها رو اعمال کردم اما باز هم در قسمتهای atoi , itoaخطا میده و خطایی که میده در هر سه جایی که از itoa, atoi استفاده شده اینه: Expected: instruction , directive , or lable
    شما باید ابتدای سورس کدتون io.h رو اینکلود کنید که نکردید . تعریف atoi , itoa در این فایل قرار داره .

    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  8. #8
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


    آيا اين پست براي شما سودمند بود؟ بله | خیر

    include io.h

    برنامه دچار مشکل include io.h ، وقتی ننوشته بودیم و از atoi و itoa استفاده کرده بودیم 3 تا خطا میداد الان که ازش استفاده کردیم دیگه اصلا برنامه رو اجرا نمیکنه و این خطا رو میده

    include file not  found : io.h

    ممنون میشم راهنمایی بفرمایید
    بااحترام


  9. #9
    بنیانگذار
    تاریخ عضویت
    2010 January
    محل سکونت
    زیر سایه خدا
    سن
    37
    ارسال ها
    1,308
    تشکر
    2,923
    تشکر شده 2,205 بار در 886 پست
    نوشته های وبلاگ
    37


    آيا اين پست براي شما سودمند بود؟ بله | خیر
    نقل قول نوشته اصلی توسط NIIT نمایش پست ها
    برنامه دچار مشکل include io.h ، وقتی ننوشته بودیم و از atoi و itoa استفاده کرده بودیم 3 تا خطا میداد الان که ازش استفاده کردیم دیگه اصلا برنامه رو اجرا نمیکنه و این خطا رو میده

    include file not  found : io.h

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

    فایل های پیوست شده
    • نوع فایل: zip io.h.zip (1.1 کیلو بایت,  این فایل 4 بار دانلود شده است)
    توکل بخدا
    http://DeepLearning.ir
    اولین و تنها مرجع یادگیری عمیق ایران


    هرکس از ظن خود شد یار من
    از درون من نجست اسرار من




  10. #10
    مدیر بازنشسته
    تاریخ عضویت
    2011 June
    محل سکونت
    گرگان
    ارسال ها
    1,170
    تشکر
    62
    تشکر شده 1,587 بار در 809 پست
    نوشته های وبلاگ
    49


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

    فایل های پیوست شده
    • نوع فایل: zip newmasm.zip (225.8 کیلو بایت,  این فایل 4 بار دانلود شده است)
    ویرایش توسط NIIT : 12th August 2011 در ساعت 10:37 PM

 

 
صفحه 1 از 6 12345 ... آخرینآخرین

کاربران برچسب خورده در این موضوع

کلمات کلیدی این موضوع

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

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


Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0
Persian Language By Ustmb.ir
این انجمن کاملا مستقل بوده و هیچ ارتباطی با دانشگاه علوم و فنون مازندران و مسئولان آن ندارد..این انجمن و تمامی محتوای تولید شده در آن توسط دانشجویان فعلی و فارغ التحصیل ادوار گذشته این دانشگاه برای استفاده دانشجویان جدید این دانشگاه و جامعه دانشگاهی کشور فراهم شده است.لطفا برای اطلاعات بیشتر در رابطه با ماهیت انجمن با مدیریت انجمن ارتباط برقرار کنید
ساعت 06:01 PM بر حسب GMT +4 می باشد.