регистр маски прерываний

Тема в разделе "WASM.ASSEMBLER", создана пользователем HammerSpb, 6 апр 2009.

  1. HammerSpb

    HammerSpb New Member

    Публикаций:
    0
    Регистрация:
    6 апр 2009
    Сообщения:
    2
    Господа. Кто нибудь может помочь?

    Мне нужно прочитать и вывести на экран содержимое регистра маски прерываний (адрес 21h) в двоичном или шестнадцатиричном формате.
    Все это нужно сделать в DOS (TASM).

    С уважением, Роман.
     
  2. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    ну читаешь его так
    Код (Text):
    1. in al, 00A1h
    2. mov ah, al
    3. in al, 0021h
    и выводишь содержимое из ax. как - гугл.
     
  3. HammerSpb

    HammerSpb New Member

    Публикаций:
    0
    Регистрация:
    6 апр 2009
    Сообщения:
    2
    Спасибо.

    Делаю так:

    Код (Text):
    1. in al, 00A1h
    2. mov ah, al
    3. in al, 0021h
    4.  
    5. mov ah,2
    6. mov dh,al
    7. shr al,4
    8. cmp al,10
    9. sbb al,69h
    10. das
    11. mov dl,al
    12. int 21h
    13. mov al,dh
    14. and al,0Fh
    15. cmp al,10
    16. sbb al,69h
    17. das
    18. mov dl,al
    19. int 21h