-
- результат вычисления unsigned int a имеет четыре значения : 0, 1, 2, 3. зачем "а" 32-х разрядная? и зачем такие разрядности ? либо ашипка в формуле либо разрядность урезать. я неправ? - m16_home(09.12.2015 22:08)
- результат умножения b*c - 128 bit Zikon(587 знак., 09.12.2015 20:31 - 20:36)
- А 2, 3 и 4 каааак дадут перенос в значимый разряд, который-то мы и не учтём… - Николай Коровин(09.12.2015 20:37)
- исправил - Zikon(09.12.2015 20:40)
- А 2, 3 и 4 каааак дадут перенос в значимый разряд, который-то мы и не учтём… - Николай Коровин(09.12.2015 20:37)
- Быстро - это быстрее чем кто? Мне кажется, сэкономить можно только не вычисляя все или часть из 8 байтов, которые отбрасываются. При этом не будут учитываться возможные переносы из них, не знаю, насколько это для вас критично. - йцукен(09.12.2015 18:23, )
- Надо как-то определиться с возможными диапазонами значений аргументов. А то ведь переполнение легко получается. А при некоторых ограничениях диапазонов можно нормироваться сдвигами и не выходить за 64 бита, а это уже умеет любой приличный SciFi(49 знак., 09.12.2015 17:28)
- Да какой бы тип не был, 8,16,32 или 64, всегда 1<<64 будет 0. Даже 1ull<<64))) - Олдфаг(09.12.2015 17:36, )
- Все такие умные, да? А ничо, что ТС написал 2^64? Прописью: "два в степени шестьдесят четыре". Вы будете смеяться, но есть и такое число. И оно не равно нулю. - SciFi(09.12.2015 17:38)
- 2^n == 1<<n, нет такого числа, я ж не зря перечислил. Даже если будет ччисло, то либо целочисленное деление либо переполнение int64 даст результат 00000. - Олдфаг(09.12.2015 17:43, )
- Гы. Вам никогда не доводилось перенормировать аргументы перед умножением? Попробуйте, это весело. - SciFi(09.12.2015 17:47)
- Мне достаточно весело знать, что 64-разрядный числитель никогда не будет больше, чем знаменатель 2^64.. - Олдфаг(09.12.2015 17:51, )
- "Есть ли математика за пределами Си?" Вы не обратили внимение, что это математическая формула, а не оператор языка Си? - SciFi(09.12.2015 17:54)
- А Вы не обратили внимание что в примере ч0тко указаны типы для каждой переменной? Они вполне себе Сишные, не БигДатовские. Так вот числитель в скобочках будет не более (2^64)-1 - Олдфаг(09.12.2015 17:57, )
- Гы. Олдфаг, иди учи Си! А знаменатель будет 2^64 == 66. Шах и мат! :-) - SciFi(09.12.2015 18:01)
- Можно и с матом, но учить Си нужно Вам, раз не знаете как перевести 2^n в 1<<n - Олдфаг(09.12.2015 18:06, )
- Не понял, зачем переводить? Там же всё написано по правилам Си, Вы же сами всё время про это твердите. Поэтому можно упростить запись: "a=b*c/66;" Обратите внимание на точку с запятой в конце, это же Си, верно? - SciFi(09.12.2015 18:11)
- А переводить чтобы понять, что справа будут вдвигаться нули, а не 66 и даже не мои любимые 69) - Олдфаг(09.12.2015 18:13, )
- Думал, что асм приводит к тяжёлому вывиху мозга. А поди ж ты, Си тоже извилины заворачивает набекрень :-) - SciFi(09.12.2015 19:10)
- А не надо додумывать ситуации. Здесь надо просто помочь человеку разобраться с переполнениями, а не указывать что у него нет main и фигурных скобочек или ксоров, не относящихся к данной пролблеме. - Олдфаг(09.12.2015 19:38, )
- Дык я и предложил. А
ты, пардон, Вы рвалось в какую-то бутылку полез(ли). - SciFi(09.12.2015 19:43, ссылка)- Ну, наверно не вводится в местном редакторе степеня, не писать же pow(2,64). Вы считаете человека идиотом, который в своем вопросе знаменатель 66 на зашифровал как 64^2 ? Почему тогда не придрались что в конце оператора нет точки с запятой? Добрее Олдфаг(51 знак., 09.12.2015 20:01, )
- Вопрошатель
ушёл в запойсамоустранился. Не исключено, что напуган сей словесной дуэлью. "Будем ждать вспышек памяти или сведений со стороны" © :-) - SciFi(09.12.2015 22:23) - 264, даром щтоле борда вся на скриптах, как корыто школопохапэшника? :) - Николай Коровин(09.12.2015 20:31)
- Вопрошатель
- Ну, наверно не вводится в местном редакторе степеня, не писать же pow(2,64). Вы считаете человека идиотом, который в своем вопросе знаменатель 66 на зашифровал как 64^2 ? Почему тогда не придрались что в конце оператора нет точки с запятой? Добрее Олдфаг(51 знак., 09.12.2015 20:01, )
- Дык я и предложил. А
- Пришёл человек-бейсик и все перегрызлись :) - Николай Коровин(09.12.2015 19:32)
- А не надо додумывать ситуации. Здесь надо просто помочь человеку разобраться с переполнениями, а не указывать что у него нет main и фигурных скобочек или ксоров, не относящихся к данной пролблеме. - Олдфаг(09.12.2015 19:38, )
- Думал, что асм приводит к тяжёлому вывиху мозга. А поди ж ты, Си тоже извилины заворачивает набекрень :-) - SciFi(09.12.2015 19:10)
- А переводить чтобы понять, что справа будут вдвигаться нули, а не 66 и даже не мои любимые 69) - Олдфаг(09.12.2015 18:13, )
- Не понял, зачем переводить? Там же всё написано по правилам Си, Вы же сами всё время про это твердите. Поэтому можно упростить запись: "a=b*c/66;" Обратите внимание на точку с запятой в конце, это же Си, верно? - SciFi(09.12.2015 18:11)
- Можно и с матом, но учить Си нужно Вам, раз не знаете как перевести 2^n в 1<<n - Олдфаг(09.12.2015 18:06, )
- Гы. Олдфаг, иди учи Си! А знаменатель будет 2^64 == 66. Шах и мат! :-) - SciFi(09.12.2015 18:01)
- А Вы не обратили внимание что в примере ч0тко указаны типы для каждой переменной? Они вполне себе Сишные, не БигДатовские. Так вот числитель в скобочках будет не более (2^64)-1 - Олдфаг(09.12.2015 17:57, )
- "Есть ли математика за пределами Си?" Вы не обратили внимение, что это математическая формула, а не оператор языка Си? - SciFi(09.12.2015 17:54)
- Мне достаточно весело знать, что 64-разрядный числитель никогда не будет больше, чем знаменатель 2^64.. - Олдфаг(09.12.2015 17:51, )
- Гы. Вам никогда не доводилось перенормировать аргументы перед умножением? Попробуйте, это весело. - SciFi(09.12.2015 17:47)
- 2^n == 1<<n, нет такого числа, я ж не зря перечислил. Даже если будет ччисло, то либо целочисленное деление либо переполнение int64 даст результат 00000. - Олдфаг(09.12.2015 17:43, )
- Все такие умные, да? А ничо, что ТС написал 2^64? Прописью: "два в степени шестьдесят четыре". Вы будете смеяться, но есть и такое число. И оно не равно нулю. - SciFi(09.12.2015 17:38)
- Да какой бы тип не был, 8,16,32 или 64, всегда 1<<64 будет 0. Даже 1ull<<64))) - Олдфаг(09.12.2015 17:36, )
- unsigned long имеет длину 32 бита, а не 64. Особенно для AVR. - Ксения(09.12.2015 17:15 - 17:24)
- Чувак даже не удосужился написать, какая разрядность у камня, не то, что каой камень :) - Shatun_(09.12.2015 17:17)
- Если пишет в раздел AVR, то у камня разрядность 8 бит :) - Ксения(09.12.2015 17:19)
- Не просто так у тебя на аватарке глаза с ладонь… углядела ж, надо ж. - Николай Коровин(09.12.2015 19:21)
- Это оттого, что "я об AVR завсегда думаю" (С) :) - Ксения(09.12.2015 19:28)
- Напрасно - я женат :)) - MBedder(09.12.2015 19:38)
- "- Холмс, я вычислил инициалы мбеддера! - Молодец, Ватсон, возьми с полки пирожок." :-) - SciFi(09.12.2015 19:46 - 19:49)
- Положь пирожок взад, AVR - мой здешний ник из прошлой жизни :)) --> - MBedder(09.12.2015 19:49 - 19:58, ссылка)
- Здесь есть еще ники - CodAVR и Д.ARMоед! - Ксения(09.12.2015 20:17)
- Положь пирожок взад, AVR - мой здешний ник из прошлой жизни :)) --> - MBedder(09.12.2015 19:49 - 19:58, ссылка)
- "- Холмс, я вычислил инициалы мбеддера! - Молодец, Ватсон, возьми с полки пирожок." :-) - SciFi(09.12.2015 19:46 - 19:49)
- Напрасно - я женат :)) - MBedder(09.12.2015 19:38)
- Это оттого, что "я об AVR завсегда думаю" (С) :) - Ксения(09.12.2015 19:28)
- Ах, сорри. Не заметил. Посыпаю голову пеплом... - Shatun_(09.12.2015 17:20)
- Не просто так у тебя на аватарке глаза с ладонь… углядела ж, надо ж. - Николай Коровин(09.12.2015 19:21)
- Если пишет в раздел AVR, то у камня разрядность 8 бит :) - Ксения(09.12.2015 17:19)
- Чувак даже не удосужился написать, какая разрядность у камня, не то, что каой камень :) - Shatun_(09.12.2015 17:17)
- С должен быть long long (types.h). А часто считать нннадо? Например при управлении DDS предпочтительно изначально загрузить в него профили и менять их на лету, при этом ничего не считая. - KLIM83(09.12.2015 17:17)
- Так вроде в винде калькулятор хороший! - Shatun_(09.12.2015 17:15)
- 128 битный? - aoreh(09.12.2015 17:23)
- Не, 64 - Shatun_(09.12.2015 17:43)
- малова-то будет - aoreh(09.12.2015 22:41)
- А в голове, быстрей, чем в электронных сотах числа водят хороводы :) - KLIM83(09.12.2015 22:44)
- малова-то будет - aoreh(09.12.2015 22:41)
- Не, 64 - Shatun_(09.12.2015 17:43)
- 128 битный? - aoreh(09.12.2015 17:23)