Результаты поиска по запросу "integer-arithmetic"

30 ответов

Неожиданные результаты при работе с очень большими целыми числами на интерпретируемых языках

Я пытаюсь получить сумму1 + 2 + ... + 1000000000, но я получаю забавные результаты в PHP иNode.js [http://en.wikipedia.org/wiki/Node.js]. PHP $sum = 0; for($i = 0; $i <= 1000000000 ; $i++) { $sum += $i; } printf("%s", number_format($sum, 0, "", ...

2 ответа

Как сделать 64-битное умножение на 16-битной машине?

У меня есть встроенный 16-битный процессор. На этой машине ширины 16 бит, и она поддерживает длинные 32 бит. Мне нужно сделать несколько умножений, которые нужно будет хранить в 64 битах (например, умножить 32-битное число на 16-битное число). ...

3 ответа

Да, пытался быть общим и просто сказать, что в дополнение к другим факторам микрокодирование добавляет еще больше изменений производительности. Реализации x86 постоянно меняются, поэтому, даже если вы могли настроить производительность, она действительно настроена только на вашу машину, поставила ее на тот же уровень неба на другой материнской плате, или на песчаный мост, или на другое, и нет причин ожидать хорошей или даже аналогичной производительности. То, что они микрокодируют или нет, это просто часть веселья.

ел проверить, действительно ли побитовые операции выполняются быстрее, чем арифметические операции. Я думал, что они были. Я написал небольшую C-программу для проверки этой гипотезы, и, к моему удивлению, сложение занимает в среднем меньше, чем ...

ТОП публикаций

2 ответа

Понял. Спасибо!

ают число 3 и переменную 'n', которая может достигать 1 000 000 000 (миллиардов). Я должен напечатать ответ3^n modulo 100003, Я попробовал следующее: Я пытался использовать функциюstd::pow(3,n), но это не работает для больших показателей (не ...

4 ответа

 будет зависеть от размера

лкивался с кодом от кого-то, кто, кажется, полагает, что существует проблема вычитания целого числа без знака из другого целого числа того же типа, когда результат будет отрицательным. Так что такой код будет неправильным, даже если он работает ...

2 ответа

Как я могу рассчитать (A * B)% C для A, B, C <= 10 ^ 18, в C ++?

Например, A = 10 ^ 17, B = 10 ^ 17, C = 10 ^ 18. Произведение A * B превышает предел long long int. Кроме того, написание ((A% C) * (B% C))% C не помогает.

2 ответа

Умножение двух 16-битных чисел - почему результат 32-битный? [закрыто]

Если я умножу два 16-разрядных числа, результат будет 32-разрядным. Но почему это так? Каково четкое объяснение этого? И для моего правильного понимания: вычисление для этого: n-битное число, умноженное на m-битное число, дает (n + m) битное число?

5 ответов

Как я могу обнаружить целочисленное переполнение на 32-битных INT?

Я знаю, такую тему задавали несколько раз, номой вопрос о переполнении на полных 32 битах int, Например: 11111111111111111111111111111111 + 00000000000000000000000000000001 = 00000000000000000000000000000000 //overflow!я ...