Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
Функция http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=15408 |
Страница 1 от 1 |
Автор: | Н'бабане Гт'муан'га [ Съб Авг 05, 2017 7:39 pm ] |
Заглавие: | Функция |
За един документ ми трябва математическа функция (не програмна) която да връща броя на байтовете които дадено число заема. Примери: F(214) = 1, защото 214 е еднобайтово число. F(577987) = 3, защото 524288 <= 577987 < 1048576, т.е. числото е 20-битово което е 3 байта. F(23746238387987) = 6 и т.н... Някой математик ако може да удари едно рамо как се изразява това като функция |
Автор: | ToHu [ Съб Авг 05, 2017 8:23 pm ] |
Заглавие: | Re: Функция |
aaaaa малко не разбирам, каква рлзика виждаш между математическа и програмна в случая ... защото математическата ще излезе от ограничението в един байт да имаш макс 256 ... малко ... това ти е log с основа 2 закръглен към следваото кратно на 8. log 2 може да го изразиш и като натурален или десеттичен логаритъм. Но чисто математически закръглението .... p.s. то може инаправо логаритъм с основа 256 и да закръгляш към следващото по-голямо, номатематическа функция за закръгление .. малко не се сещам. |
Автор: | jig.tak [ Съб Авг 05, 2017 11:03 pm ] |
Заглавие: | Re: Функция |
Y=ceiling(ln(X)/ln(256)) става със всякаква основа логаритъм за отрицателни числа няма да работи |
Автор: | ToHu [ Нед Авг 06, 2017 12:24 am ] |
Заглавие: | Re: Функция |
ceiling каква мат. функция е Ако говорим за програмен способ няма никаква нужда да смяташ алгоритми или каквото и да е, просто търсиш най-старшия бит в който имаш единица, или просто проверваш кой е най-старшият байт от променливтаа който е >0. Това работи и за отрицателни и за положителни и за всякакви Но той пита за математическо изразяване, та аз не помня да има такава операция, операцията е закръглеване |
Автор: | jig.tak [ Нед Авг 06, 2017 6:18 pm ] | ||
Заглавие: | Re: Функция | ||
има доста извратени мат функции, но тази поне има очевиден смисъл https://www.mathsisfun.com/sets/functio ... iling.html
|
Автор: | slav4o.com [ Сря Авг 23, 2017 8:42 pm ] |
Заглавие: | Re: Функция |
А не може ли нещо от сорта ако числото е 0-255 е 1 байт, ако е 256-65535 е 2 байта и т.н. |
Автор: | ToHu [ Сря Авг 23, 2017 10:06 pm ] |
Заглавие: | Re: Функция |
Той иска формула, иначе както писах най-лесно е да проверява до къде има 1-ца в числото, дали побайтово или побитово все там. |
Страница 1 от 1 | Часовете са според зоната UTC + 1 час [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |