2008-09-17 1 views
5

Какое прерывание вы могли бы перехватить из DOS, чтобы получить часы реального времени?Какое прерывание вы бы подключили из DOS, чтобы получить часы реального времени

+0

Могу ли я задать вопрос, почему вы хотите это сделать? Выполнение DOS-программирования в наши дни довольно странно :-) – 2008-09-17 17:37:20

ответ

3

Часы реального времени не могут генерировать прерывания. Это было (возможно, еще) в сочетании с CMOS-RAM, потому что он был забуферирован батареей. Доступ к нему возможен только через порты 0x70 и 0x71.

Вы можете, однако, перехватить прерывание PIT (программируемый таймер прерывания). Это прерывание 0x08 (например, аппаратное IRQ0). Насколько я помню, прерывание было настроено с помощью dos для вызова около 27 раз в секунду. Вы можете запрограммировать его и на другие частоты, но это немного испортит дош-часы (порт 0x40 и 0x43).

+2

Это тот, но это 18 и бит раз в секунду. – pjc50 2009-05-21 13:02:34