Interrupt verbiegung - Assembler

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Interrupt verbiegung - Assembler

    Schreibe eine Procedur SET, welche den Interrupt-Vektor des INT BAh, ohne Verwendung eines Interrupts, auf eine Procedur NEW umleitet. Erkläre ausführlich deine Vorgehensweise. Kommentiere die einzelnen Assemblerbefehle.

    IVECT proc
    mov AX, 0h
    mov DS, AX ; Segment 0 auswählen
    mov BX, 2E8h ; 4* BAh=2E8h
    ; Adr. des Interrupt-Vectors BAh

    mov DI, word ptr[BX] ; Offset LB+HB ins DI speichern
    mov word ptr[BX], OFFSET NEW ; Offset NEW nach Adr. in BX schreiben. ; CS erhält Segmentadresse von Uhr

    mov ES, word ptr[BX+2] ; Segement LB+HB ins ES speichern
    mov word ptr[BX+2], CS ; Segmentadresse von NEW schreiben

    RET
    IVECT endp

    -----------------------------------
    warum muss ich offset lb und hb ins DI speichern, und warum in ES?
    versteh eigentlich fast garnix von der proc..

    wäre nett wenn einer mir sie erklären könnte