Количество LPT-портов

Тема в разделе "WASM.ASSEMBLER", создана пользователем _AVS_, 5 дек 2007.

  1. _AVS_

    _AVS_ New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2007
    Сообщения:
    10
    Здравствуйте!

    Мне необходимо написать программу, которая должна вывести на экран количество LPT-портов на данном компьютере. Знания Assembler'a отсутствуют, но программа очень нужна. Пожалуйста, помогите с написанием.
     
  2. Vov4ick

    Vov4ick Владимир

    Публикаций:
    0
    Регистрация:
    8 окт 2006
    Сообщения:
    581
    Адрес:
    МО
    Если вызвать 11h прерывание, в битах 14-15 регистра AX возвратится число параллельных портов. Та же информация содержится в слове по адресу 40h:10h.
     
  3. _AVS_

    _AVS_ New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2007
    Сообщения:
    10
    Спасибо.

    А вот так я смогу вывести это значение на экран?

    Код (Text):
    1. MOV AH,09H
    2. LEA DX,40H:10H
    3. INT 21H
    Если нет, то как тогда сделать вывод на экран?
     
  4. _AVS_

    _AVS_ New Member

    Публикаций:
    0
    Регистрация:
    5 дек 2007
    Сообщения:
    10
    Или вот так написать код программы?:

    Код (Text):
    1. MAIN PROC
    2.  
    3.   MOV AX,@DATA
    4.   MOV DS,AX
    5.  
    6.   INT 11H
    7.  
    8.   MOV AH,09H
    9.   LEA DX,AX[14]
    10.   INT 21H
    11.  
    12. ;Завершение работы
    13. MOV AX,4C00H
    14. INT 21H
    15. MAIN ENDP
    16. END MAIN