![]() |
Часики [ASM]
Народ, что-то мне пришла в голову бредовая идея.. сделать простейшие часики на asm'е... Написать самой. для практики.. а то как собака - вроде и понимаешь, а сделать ничего не можешь. надо это исправлять. погуглила.. нашла для процессора .486p - понятно, что это не то... Можно конечно переделать.. но я не вникала особо в архитектуру. Точнее не настолько, чтобы самой грамотно сделать. Так что напортачу 100% Может кто-нибудь обьяснить по какому вообще ПРИНЦИПУ все это строится? всмсыле не сам код, а порядок и по какой вообще логике идет все это. а то сижу тут, часа 3 голову ломаю..
Просто думаю, что код и сама смогу составить.. А вот ЧТО ИМЕННО там надо делать, можно поподробней плз? А тупо копировать код не хотелось бы. Важен сам принцип.. Кто сможет помочь? ПС: сначала дельные мысли, потом флудите и стебитесь сколько хотите.. Мне пофиг.. ППС: хотя бы в кодинге не оффтопьте.. как людей прошу.. |
самый простой вариант получать время винапи функцией GetLocalTime(), тебе понадобится структура SYSTEMTIME(переменные wHour, wMinute, wSecond).
Код:
SYSTEMTIME sm; |
хмм. как я не догадалась. а то мудрила чето с прерываниями.. с таймерами.. а на деле.. хмм. надо будет разобраться.
ПС: просила же код не давать)) так неинтересно будет)) |
Ну начни для начала не с асма а с си. Примени там эту апишку, а потом, когда поймешь, что почем, напиши и на асме!
|
Alexsize, я прошу именно на асме. то есть я на СИ не знаю ничего ВООБЩЕ. и в данный момент, мне интересней асм.. можно было вообще на пхп сделать и не заморачиваться. а в чем тогда вся прелесть? на асме я итак напишу, без С
|
Alexsize, тебе не всеравно? Интересует ее асм, пусть пишет на нем, а ложные выдумки, что асм сложнее С оставьте при себе.
|
Цитата:
To Shnurovka: клац |
Хм...как одно из решений:
1. Напиши на си(не важно, использешь ты апи или нет). 2. Отруби оптимизацию в компиляторе и линковщике. 3. Дизассемблируй что получилось - и посмотри....если знаешь основы ассемблера - все поймешь! ЗЫЖ Не ругай по почкам плз :) |
biophreak, кажется я ясно написала, что на С я НЕ ПИШУ. ))) пинать само собой не буду)) потому что без всякого стеба дал совет.. Что уже прогресс.. На ачате-то
кароч я поняла все. на днях займусь. а то чет слишком устала... ПС: если у кого есть еще дельные предложения безо всяких там С и т.д, то постите - мне интересно сделать разными способами.. Не помешает в любом случае.. Alexsize, да, я вижу программу-часы. но она под дос.. а учить лучше что-то одно. Но все равно спасибо.. |
Насчет принципа - имхо все просто!
скелет программы(типа модели, заголовков, либ - пропускаем :)) 1. Создаешь "цикл" (хотя как такового понятия цикл в асме нет, но все же :)) 2. Принтишь время. (вызываешь ту же WinAPI ф-ию для показа времени) 4. Делешь задержку в 1с 5. Выполняешь пункт 2, очищая экран(если надо - возвращаешься в ту позицию, где прошлый раз принтили время) =) Вроде так...это для консоли... Советую писать на fasm - ИМХО наиболее удобный из ассемблеров! В нем есть прототипы почти всех WinAPI ф-ий... |
| Время: 10:24 |