Вопросы по теме 'integer-arithmetic'

Как выполнить арифметическую операцию в атрибуте частоты опроса Mule?
Я сохраняю частоту опроса в файле свойств в секундах. Но атрибут частоты компонента «опрос» в Mule ожидает, что частота будет в миллисекундах. Как я могу выполнить операцию умножения здесь? Следующие два, похоже, не работают: (1) <poll...
596 просмотров
schedule 11.10.2022

Странная логика целочисленного переполнения
Для следующего кода я получаю переполнение, но, к сожалению, не могу понять, почему. std::int8_t smallValue = -1; unsigned int value = 500; std::uint8_t anotherSmallValue = 1; auto test = smallValue * value *...
157 просмотров
schedule 31.03.2023

Преобразование клавиатуры
Я хочу, чтобы числа, вводимые с моей клавиатуры Arduino (типа «char»), были преобразованы в тип «int», чтобы я мог использовать их в переменных и использовать математику. Например, если я нажимаю клавишу «5», как мне поместить ее в переменную...
1959 просмотров

C — 32-битная и 16-битная арифметика на 8-битном микропроцессоре
Я пишу код для старого 8-битного микропроцессора (Hu6280 — производная от WDC 65C02 в старой консоли NEC PC-Engine) с 32 КБ оперативной памяти и до 2,5 МБ данных/кода. Язык представляет собой вариант Small-C, но ограничен только двумя следующими...
2532 просмотров

Эквивалентно ли арифметическое переполнение операции по модулю?
Мне нужно выполнить арифметику по модулю 256 на C. Итак, могу ли я просто сделать unsigned char i; i++; вместо int i; i=(i+1)%256;
2749 просмотров
schedule 18.11.2022

Быстрое целочисленное решение x(x-1)/2 = c
Учитывая неотрицательное целое число c , мне нужен эффективный алгоритм для нахождения наибольшего целого числа x такого, что x*(x-1)/2 <= c Соответственно, мне нужен эффективный и надежно точный алгоритм для вычисления: x =...
696 просмотров
schedule 28.03.2024

Более приятная арифметика для примитивных типов в Rust
Есть ли более удобный способ выполнения арифметических операций с различными примитивными типами (с автоматическим продвижением вверх), чем явное приведение и развертывание? Например, в случае, как: let a: u8 = 1; let b: u16 = 2; let c: u32 =...
262 просмотров
schedule 11.07.2022

C# Создание целочисленного значения с помощью двоичных операций из битов
У меня есть массив байтов, которые на самом деле являются двоичными значениями, подобными этому byte[] buf = new byte[] { 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }; Двоичное представление: 1111 1110 ( 0xFF = 0 , 0xF0 = 1 )....
524 просмотров
schedule 20.05.2022

Итак, как компьютер интерпретирует результат беззнаковой / подписанной арифметики, если он будет использоваться снова?
Прежде всего, учитывая, что компьютер / процессор не заботится о том, является ли данное число в двоичном формате подписанным или беззнаковым числом, в зависимости от инструкций, которые он получает в операционном коде, он выполняет арифметику со...
141 просмотров
schedule 02.04.2023

Уловка деления константы (степени двойки) на целое число
ПРИМЕЧАНИЕ . Это теоретический вопрос. Я доволен производительностью моего кода как такового. Мне просто интересно, есть ли альтернатива. Есть ли уловка для целочисленного деления постоянного значения, которое само является целочисленной...
1224 просмотров
schedule 02.03.2023

Внедрение/применение циклической арифметики в C
Стандарт C говорит, что переполнение в арифметике не определено. Я хотел бы знать, как реализовать циклическую арифметику с точки зрения производительности. Это означает, что решения для проверки переполнения, подобные представленным здесь не...
386 просмотров
schedule 20.09.2022

Ошибка арифметического переполнения после изменения порядка запроса
У нас есть запрос, как показано ниже SELECT p.propertyNumber as propertyNumber, ( SELECT COUNT(*) FROM #TEM WHERE pNumber = p.propertyNumber AND dsenderType = 0 AND dType = 1 AND reTime...
107 просмотров
schedule 02.06.2023

дополнение от 0 до 0
Для фона я пытаюсь вычислить контрольную сумму для IP-пакета, который хранится в постоянной памяти (не могу изменить его на месте). Прежде чем делать контрольную сумму, я должен притвориться, что существующая контрольная сумма в пакете равна 0....
473 просмотров

Как написать метод LessThan без использования оператора
Как бы вы рекурсивно написали метод, который проверяет, меньше ли число, чем другое, без использования оператора '‹'? Вы можете использовать только операторы «плюс», «минус», «умножить» и «равно». Он должен быть рекурсивным x и y всегда...
1779 просмотров

Повышение в целочисленных арифметических выражениях
У меня два связанных вопроса: Что говорит стандарт и что делают разные компиляторы, когда речь идет о сравнении арифметического выражения вида x * y == z (или x + y == z), где x * y слишком велико для любого x или y, чтобы удерживать, но не...
120 просмотров
schedule 18.03.2022

T-SQL: как отключить проверку переполнения для целочисленных операций?
В C# у нас есть unchecked для отключения проверки переполнения для целочисленных операций. int int1; unchecked { int1 = 2147483647 + 10; } Целочисленный арифметический результат будет равен -2 147 483 639. Но в T-SQL я не могу найти...
1006 просмотров

Быстрее ли умножать низкие числа в C/C++ (в отличие от больших чисел)?
Пример вопроса: Расчет 123*456 быстрее, чем расчет 123456*7890? Или скорость одинаковая? Меня интересуют 32-битные целые числа без знака, но я не буду игнорировать ответы о других типах (64-битных, со знаком, с плавающей запятой и т. д.). Если...
959 просмотров
schedule 23.06.2022

Несогласованные результаты при вычислении одного и того же целого числа с разными выражениями
Арифметический результат для одного и того же выражения приводит к разным результатам в зависимости от того, определяю ли я целое число в одной строке или использую несколько шагов: int main() { unsigned long long veryBigIntOneLine =...
47 просмотров

Эффективный целочисленный размер Python
Например, в C#, C++, Java или JavaScript эффективный размер целого числа составляет 32 бита. Если мы хотим вычислить какое-то большое число, например, 70 бит, мы должны использовать некоторые программные возможности ( Арифметика произвольной точности...
66 просмотров

Реализация подписанного сумматора
Предположим, что у меня есть два логических вектора: logic [4:0] a; logic [4:0] b; которые содержат 2 дополнительные значения. Я хочу выполнить вычитание и расширить результат на 1 бит. Например, предположим, что я хочу вычислить -12 - 13 и...
73 просмотров