masm division überlauf

Ich versuche dividieren von zwei zahlen in der Montage. Ich arbeite aus der Irvine-Montage für intel-Computern Buch und ich kann es nicht machen, die Teilung der Arbeit für das Leben von mir.

Hier ist mein code

.code
main PROC
    call division
    exit
main ENDP

division PROC
    mov eax, 4
    mov ebx, 2
    div ebx
    call WriteDec
    ret
divison ENDP

END main

Wo WriteDec sollte schreiben, was Zahl ist in den eax-register (sollte der quotient nach der Teilung nennen). Statt jedes mal wenn ich es starten von visual studio stürzt ab (macht das Programm kompilieren, jedoch).

  • Können Sie Schritt für Schritt durch es in der Visual Studio-debugger? Wie weit wollen Sie erhalten, wenn Sie Schritt in jedem Unterricht?
  • Nicht behandelte Ausnahme bei 0x00401075 in Project.exe: 0xC0000095: Integer-überlauf. Passiert direkt nach dem aufrufen von div.
  • Wenn Sie die Teilung durch 2 und du bist interessiert, in der Leistung, möchten Sie vielleicht zu prüfen, mit SHR.
  • Wie können Sie Schritt für Schritt durch die einzelnen Montage-Anweisung mit Visual Studio-debugger? Ich habe noch nicht dachte, dieses heraus nach ein paar Google-suchen.
  • Halten Sie ändern Sie den Namen des Menüpunktes und die shortcut-Taste, um dorthin zu gelangen. Suchen Sie nach etwas wie "Ansicht " Demontage". Es ist eine Sicht, mit einem register-Fenster, ein Speicher-Fenster, stack viewer, Demontage, etc. Für VS 2012 hier sind die Anweisungen: msdn.microsoft.com/en-us/library/a3cwf295.aspx
  • Gleichwertig sind Anweisungen für VS 2010?
  • Sicherlich finden Sie unter google.com/search?q=vs+2010+Demontage

Schreibe einen Kommentar