Zdravím, nevíte prosím někdo jak naprogramovat časovač v assembleru (x86)? Hledal jsem na goooogle ale tam jsou tutoše pro C, Packal ale pro assembler ne nebo jsou dloooouhý. Slyšel jsem o bios proměnné v 0040:006C, ale nevím co s tím. Např. program, který každou vteřinu bude psát nějakej text, dokud timer neskončí nebo ho něco nepřeruší.
Fórum › Assembler
Timer
Každý počítač vlastní špecialny časový číp 8259, ktorý volá HW interrupt 08h +8.2 krát za sekundu. Stačí zistit adresu obslužnej rutiny tohto interruptu a vložiťdo nej vlastný kód a potom ešte zavolat predošĺu rutinu na zabezpečenie kompatibility. Alebo pužiť SW iterrupt 1aH a po návrate je v CX,DX registroch počet taktov od posledného resetu. Lenže takto to funguje iba v 16b DOSe. Vo Windowse s tým sú problémy a nedovoluje prepisovať HW interrupty.
Tak potom:
unsigned long n;
__asm {
call GetTickCount
mov n, eax
}
Vo widnsowse treba použiť jeho funkcie, inak sa to nedá...
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 92 hostů