На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 5 / Тактовая частота MS-DOS Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Тактовая частота MS-DOS

Во время написания этой книги MS-DOS доступна для шести процессоров семейства 8086: 8088, 8086, 80188, 80286 и 80386. Самый медленный из них 8088, а самый быстрый - 80386 (и самый мощный). Процессорам семейства 8086 доступна различная тактовая частота, как показано в таблице 5-2. Тактовая частота 4.77 МГц означает, что генерируется 4.77 миллиона тактов в секунду. Тактовая частота определяет быстродействие процессора: чем она выше, тем быстрее процессор. Заметим однако, что процессор 80286 быстрее, чем 8086, имеющий такую же тактовую частоту.


В связи с тем, что процессор 8088 самый медленный из семейства 8086, все временные характеристики в этой главе даются для процессора 8088, имеющего тактовую частоту 4.77 МГц. Если Ваш компьютер имеет большее быстродействие, Вы сможете получить ответ быстрее. Так как семейство процессоров 8086 имеет возможность предварительной выборки команд из очередей, действительное время выполнения некоторой последовательности команд может отличаться от времени выполнения, суммированного из отдельных команд.


                                                         Таблица 5-2
                      Тактовая частота для MS-DOS компьютеров
         ДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДД
                         і                           і
         Процессоры 8086 і Наименование компьютера   іТактовая частота
         ДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДД
                         і                           і
           8088          і IBM PC                    і  4.77,8 МГц
           8086          і IBM PC Compatible         і  8,12 МГц
           80188/186     і IBM PC Compatible         і  8,10 МГц
           80286         і IBM PC AT (режим 8086)    і  8,10 МГц
           80386         і IBM PC AT (386) (режим 8086) 16,20,25 МГц
         ДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДД

MS-DOS поддерживает часы в реальном масштабе времени. Они обеспечивают дату и время и доступны любой программе. Время поддерживается с точностью до 10 миллисекунд. Таким образом, если для приложения необходима разрешающая способность меньше 10 миллисекунд, оно не может использовать эти часы.


Следующая программа считывает дату из MS-DOS. Для считывания даты программное обеспечение использует прерывание 21h. В действительности, прерывание 21h используется при запросе любого обслуживания MS-DOS, при этом регистр AH должен содержать код выполняемой функции. Позднее мы обсудим несколько примеров программ, использующих программные прерывания для вызова MS-DOS или POM-BIOS.


              mov     ah,2ah       ; считывание даты
              int     21h          ; вызов DOS
              mov     year,cx      ;  год в CX (от 1980 до 2099)
              mov     month,dh     ; месяц в DH (от 1 до 12)
              mov     day,dl       ; день в DL (от 1 до 31)

В приведенной программе день недели возвращается в AL. Как видно из программы, для вызова MS-DOS или POM-BIOS выполняются следующие шаги:


- Занесение в регистры соответствующих кодов команд и параметров.


- Осуществление прерывания, соответствующего вызываемой функции.


- Возврат, считывание возвращаемых параметров и статуса информации из регистров.


Для считывания времени из MS-DOS используется прерывание int 21h с кодом команды AH=2ch, как показано в следующей программе:


              mov     ah,2ch       ; cчитывание времени
              int     21h          ; вызов DOS
              mov     hours,ch     ; часы в CH (от 0 до 23)
              mov     mins,cl      ; минуты в CL (от 0 до 59)
              mov     secs,dh      ; секунды в DH (от 0 до 59)
              mov     msec,dl      ; 10 мсек в DL (от 0 до 99)

Программа считывает системное время и запоминает его в указанных переменных. Время и дату можно получить, используя функцию вызова MS-DOS.


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz