"Роберт Джордайн. Справочное пособие программиста - 2 (ассемблер, операционная система MS DOS)" - читать интересную книгу автора 510 A = PEEK(&H46C) 'получаем младший байт
520 A = PEEK(&H46D) 'получаем следующий байт 530 A = PEEK(&H46E) 'и еще один 540 TOTAL = A + B*256 + C*65535 'подсчитываем результат в TOTAL 550 RETURN 'все сделано Функция TIMER в Бейсике возвращает число секунд, прошедших с момента, когда счетчик времени суток был последний раз установлен в 0. Обычно это число секунд, прошедших со времени последнего включения компьютера. Если при старте системы правильно было установлено системное время, то TIMER возвращает число секунд, прошедших с полуночи. Просто напишите N = TIMER. Средний уровень. Прерывание 1AH имеет две функции для установки (AH = 1) и получения (AH = 0) счетчика времени суток. Для чтения счетчика надо просто выполнить прерывание с AH = 0. При возврате значение счетчика содержится в CX:DX, причем младшее слово в CX. AL содер- жит 0, если счетчик не переходил через границу 24 часов с момента последней установки. Для установки счетчика поместите два слова в те же регистры, а в AH - 1. В приведенном примере измеряются промежутки времени в пределах часа. При этом нужны только два младших байта счетчика. Но в этом случае необходимо проверять, что не было перехода через границу, когда начальное значение было ;---в сегменте данных OLDCOUNT DW 0 ;храним начальное значение счетчика ;---получаем начальное значение счетчика MOV AH,0 ;номер функции INT 1AH ;получаем значение счетчика MOV OLDCOUNT,DX ;сохраняем начальное значение . (здесь идет процесс, длительность которого измеряется) . ;---позднее вычисляем длительность процесса MOV AH,0 ;номер функции INT 1AH ;получаем значение счетчика MOV BX,OLDCOUNT ;считываем старое значение CMP BX,DX ;проверяем на переполнение JG ADJUST ;обработка переполнения SUB DX,BX ;иначе берем разность JMP SHORT FIGURE_TIME ;и переводим ее в обычный вид ;---обработка переполнения ADJUST: MOV CX,0FFFFH ;помещаем в CX максимальное число SUB CX,BX ;вычитаем первое значение |
|
|