Компилятор HITECH PICC. Каким образом наиболее благоприятно можно выполнить операцию деления числа на 10, 100, 1000? и особый вопрос деления единицы на число. Единицу необходимо поделить на 16ти битную переменную. Можно конечно взять и просто написать - VALUE = VALUE/100; - но это будет весьма неуклюжее решение.
Неуклюжим оно будет только если Вы неправильно выберете формат представления операндов. Вариантов тут не слишком много. Либо кондовый float. Либо целое с фиксированной точкой необходимой для вычислений разрядностью. Ничего об этом Вы не сообщили. Предлагаю не шифроваться, а прямо сказать о КОНЕЧНОЙ ЦЕЛИ таких вычислений. Собственно я догадываюсь, но давайте все таки соблюдать приличия.
Неуклюжим оно будет только если Вы неправильно выберете формат представления операндов. Вариантов тут не слишком много. Либо кондовый float. Либо целое с фиксированной точкой необходимой для вычислений разрядностью. Ничего об этом Вы не сообщили. Предлагаю не шифроваться, а прямо сказать о КОНЕЧНОЙ ЦЕЛИ таких вычислений. Собственно я догадываюсь, но давайте все таки соблюдать приличия.
Да не вопрос. Переписать вот это в надлежащий вид:
Заголовок сообщения: Re: Операция деления на кратные значения
Добавлено: Вт мар 29, 2016 11:39:27
Модератор
Карма: 90
Рейтинг сообщений: 1443
Зарегистрирован: Чт мар 18, 2010 23:09:57 Сообщений: 4613 Откуда: Планета Земля
Рейтинг сообщения:0 Медали: 1
На дурине. AndrF, вы хотябы приблизительно представляете, во что выливаются вот эти ваши строки и сколько они выполняются по времени ? Так быдлокодить могут только далёкие от программирования люди. Особенно, если программирование касается микроконтроллеров.
Заголовок сообщения: Re: Операция деления на кратные значения
Добавлено: Вт мар 29, 2016 12:06:16
Модератор
Карма: 90
Рейтинг сообщений: 1443
Зарегистрирован: Чт мар 18, 2010 23:09:57 Сообщений: 4613 Откуда: Планета Земля
Рейтинг сообщения:0 Медали: 1
Цитата:
не намного хуже, чем printf/sprintf
На много, даже прилично. Тут используются классы, работающие со строками. Если преобразования, типа DecToStr можно приблизительно приравнять к sprintf (и то, это далеко не тоже самое), то всяческие сложения строк требуют очень больших ресурсов и времени, из-за динамического выделения памяти для каждого нового экземпляра, при каждой операции. Плюс потом конкатенация в цикле (ну или вызов strcat, тут от "библиотекарей" зависит). Плюс удаление из памяти лишних экземпляров, с вызовом деструкторов. И т.д.. и т.п... По всей видимости, Вы с трудом представляете иерархию подобных действий и что в них происходит.
Цитата:
выпад ваш слабо обоснован...
Вполне обоснован. Плюс ко всему выше сказанному, человек запостил совершенно не по теме. Речь шла о конкретном компиляторе и о операциях деления. Как раз, наоборот, именно его выпад я считаю бестолковым. К чему был его пост, совершенно не понятно. Я его посчитал обычным вы@боном, типа смотрите как я умею - всего то 2 строчки, поставив за него незачёт.
возможно, возможно... но сомнения остаются. я обычно молчу, если не имею доказательств. собственно, и аргументов в пользу моей т.з. у меня нет... видимо, зря я выступил
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения