|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.12.2009, 21:40 | #1 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
Пауза в реальном режиме
Доброго времени суток!
Ту не большой вопросик, как прописать паузу в реальном режиме? Хоть дайте направления.... |
17.12.2009, 22:00 | #2 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Команда HLT - останавливает процессор в ожидании следующего прерывания.
А что вы подразумеваете под паузой и для чего вам это нужно?
"Тяжело в учении, легко в бою" - А.В. Суворов
|
17.12.2009, 22:11 | #3 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
Хотел бы понят как работает процедура у К.Ирвина (irvine32.lib)
он ее там назвал Delay и в регистр eax(ax) назначает в милисикундах. А, каждую его учебную программу в защищеном режиме, "условно проробатываю" в реальном... Спасибо Ivan_32! хоть буду знать с чего начать поиск)) |
17.12.2009, 22:48 | #4 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
Ivan_32
Чуток не так.. эта команда будет "держать " процесор до первого прерывания, мне нужно что бы именно время являлось выходом из паузы... или нужно с помощью прерывания INT1ch но там с этим прирыванием много заморочек получаеться... |
18.12.2009, 07:56 | #5 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Ну да, я так и написал А прерыванием этим как раз может быть таймер Ну или клавиатура и что угодно еще... Я к чему собственно:
таймер работает на очень высоких частотах, соттвественно массив из HLT-ов может оказатся хорошей задержкой хоть и не точной. С таймер там тоже особых проблем нет: mov word [08h * 4], ax ;смещение mov word [08h * 4 + 2], cx ; сегмент И все - у вас уже свой обработчик прерывания. Как вариант можно сделать так: Код:
"Тяжело в учении, легко в бою" - А.В. Суворов
|
18.12.2009, 09:21 | #6 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
Можно сделать паузу при помощи команды RDTSC, считающей количество тактов, прошедших с момента запуска процесора
Код:
Последний раз редактировалось alexcoder; 18.12.2009 в 09:23. |
18.12.2009, 18:07 | #7 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
Ivan_32;alexcoder; Спасибо!
а, можно коментарий к данному коду то у меня мозгов не хватает до понять, данную задачу..... с уважением Дмитрий Последний раз редактировалось Doholyan; 18.12.2009 в 18:36. |
18.12.2009, 23:12 | #8 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
Сорри, была ошибка, наверно два раза вставил
Код:
|
19.12.2009, 05:47 | #9 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Код:
"Тяжело в учении, легко в бою" - А.В. Суворов
|
19.12.2009, 22:57 | #10 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
alexcoder; Ivan_32;
Спасибо!! само интресесно что вопросов меньше не стало)))) но... всеравно Спасибо |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Адреса в реальном режиме | codeok | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 21.11.2009 12:28 |
переброс данных из Excel в Delphi в реальном режиме времени | Машутка | Общие вопросы Delphi | 3 | 27.09.2008 07:19 |
Пауза в выполнении программы | Иллидан | Общие вопросы Delphi | 6 | 24.01.2008 16:56 |
Возможно ли пауза Music XM при сворачивание формы ? | Volkogriz | Общие вопросы Delphi | 3 | 13.10.2007 15:04 |