|
fload в char |
|
|
|
 |
Ответов
|
Jun 27 2007, 05:49
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
Цитата(Dog Pawlowa @ Jun 26 2007, 18:37)  Да? А медленно - это сколько? Встречный вопрос: а как подсчитать количество тактов, потраченных на выполнение того или иного куска кода? Судя по Вашим постам в этом форуме, ответ Вы знаете. Зачем тогда спрашиваете, издеваетесь, да? Код: Код sprintf(txt, "%.4f", 12.35); занимает в IAR симуляторе примерно 19000 тиков CYCLECOUNTER'а. Много это или мало Вам судить. По мне проще сделать простое преобразование типов (int), а затем (char *)& или Bin2BCD. Если нужна и дробная часть, то сначала умножить на 10.0, 100.0, 1000.0 и т.д. Все равно быстрее. Да и не забудьте добавить 0.5, чтобы получить правильное округление.
|
|
|
|
|
Jun 27 2007, 06:36
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Цитата(shasik @ Jun 27 2007, 08:49)  Встречный вопрос: а как подсчитать количество тактов, потраченных на выполнение того или иного куска кода? Судя по Вашим постам в этом форуме, ответ Вы знаете. Зачем тогда спрашиваете, издеваетесь, да? Код: Код sprintf(txt, "%.4f", 12.35); занимает в IAR симуляторе примерно 19000 тиков CYCLECOUNTER'а. Много это или мало Вам судить. По мне проще сделать простое преобразование типов (int), а затем (char *)& или Bin2BCD. Если нужна и дробная часть, то сначала умножить на 10.0, 100.0, 1000.0 и т.д. Все равно быстрее. Да и не забудьте добавить 0.5, чтобы получить правильное округление. Издеваюсь ли? Немножко 19000 тиков - это на частоте 8 Мгц время 2 мс, частота 500 Гц, да? Глаз чаще 20 Гц не различает. Реально отсчеты могут отложиться в мозгу с частотой 1-2 Гц, если смотрит человек, а не терминатор. Поэтому я и удивился - так для кого Вы делаете такой прибор?!  А такты я не считаю, я осциллографом смотрю критичные участки.
--------------------
Уходя, оставьте свет...
|
|
|
|
|
Jun 27 2007, 07:58
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
Цитата(Dog Pawlowa @ Jun 27 2007, 09:36)  Издеваюсь ли? Немножко 19000 тиков - это на частоте 8 Мгц время 2 мс, частота 500 Гц, да? Глаз чаще 20 Гц не различает. Реально отсчеты могут отложиться в мозгу с частотой 1-2 Гц, если смотрит человек, а не терминатор. Поэтому я и удивился - так для кого Вы делаете такой прибор?!  А такты я не считаю, я осциллографом смотрю критичные участки. А если так: процессор MSP430, тактовая 32*32768 Гц. Тогда 19000 = 18мс или 55 Гц. С 55 Гц вроде нормально, но тратить 18мс на простой вывод на экран - это уж слишком. Реально в промышленных приборах индикатор скорее красивая примочка, основная же работа "скрыта от глаз". А отсутствие контроля в течении 18мс для некоторых технологических процессов неприемлимо. Мое мнение неизменно: printf - только для Simulator'а. Даже на PC'ках с их гигигерцами в программах, критичных к времени выполнения, это роскошь.
|
|
|
|
|
Jun 27 2007, 09:16
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
Цитата(Dog Pawlowa @ Jun 27 2007, 11:36)  А систему прерываний уже отменили? Кто посмел?!  Смешно! Действительно, зачем мучить себя и писать какой-то код, если есть уже готовый. Да фиг с ним, что он на порядок(!) медленне, фиг с ним - купим проц побыстрее. А напрягать свой "мозг" не станем. А наслаждение от хорошо сделанной работы - тоже фиг с ним, лишь бы деньги платили. P.S. В Microsoft работаете?
|
|
|
|
|
Jun 27 2007, 09:35
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Цитата(shasik @ Jun 27 2007, 12:16)  Смешно!
Действительно, зачем мучить себя и писать какой-то код, если есть уже готовый. Да фиг с ним, что он на порядок(!) медленне, фиг с ним - купим проц побыстрее. А напрягать свой "мозг" не станем. А наслаждение от хорошо сделанной работы - тоже фиг с ним, лишь бы деньги платили.
P.S. В Microsoft работаете? Если Вы будете переходить на личности, модераторы примут меры, что будет не очень хорошо для Вас, так как мне кажется, что всегда и всем есть чему поучиться, в том числе и Вам у меня. Если это Вам смешно и/или обидно, лучше промолчите. Если же Вы готовы продолжить дискуссию, то мы можем это сделать, только избегайте упоминания об абстрактном готовом софте, смысле напрягать мозги, упреков в получении незаработанных денег, и месте моей работы - только технические аспекты. Итак, что мешает Вам огранизовать контроль технологических процессов с периодичностью 0,5 .. 1 мс в прерывании таймера, исключив тем самым задержку контроля при выводе информации на экран?
--------------------
Уходя, оставьте свет...
|
|
|
|
Сообщений в этой теме
Karl fload в char Jun 25 2007, 09:53 Dog Pawlowa Цитата(Karl @ Jun 25 2007, 12:53) Народ, ... Jun 25 2007, 10:12 KRS Цитата(Karl @ Jun 25 2007, 13:53) Народ, ... Jun 25 2007, 10:14 Karl Попробовал sprintf - вылезла ошибка
Fatal Error[e7... Jun 25 2007, 10:59  zltigo Цитата(Karl @ Jun 25 2007, 13:59) Попробо... Jun 25 2007, 11:01 IgorKossak Для работы sprintf HEAP не нужен.
Видимо автор пыт... Jun 25 2007, 14:00 Karl Цитата(IgorKossak @ Jun 25 2007, 20:00) Д... Jun 26 2007, 03:29   zltigo Цитата(shasik @ Jun 27 2007, 08:49) По мн... Jun 27 2007, 09:30    shasik Цитата(zltigo @ Jun 27 2007, 12:30) То о ... Jun 27 2007, 10:48     Dog Pawlowa Цитата(shasik @ Jun 27 2007, 13:48) 1. А ... Jun 27 2007, 11:19      Karl Уф, ну и дискуссию вы тут развернули! Похоже, ... Jun 28 2007, 11:52
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|