spamsink: (Default)
[personal profile] spamsink
Оказывается, вычисление абсолютного значения целого числа вот так:


int v; // we want to find the absolute value of v
unsigned int r; // the result goes here
int const mask = v >> sizeof(int) * CHAR_BIT - 1;

r = (v ^ mask) - mask;

запатентовано моим бывшим начальником. А вот так:

r = (v + mask) ^ mask; - не запатентовано!

Кроме сказанного по ссылке, я не исключаю возможности, что еще до своего отъезда летом 1993 года я успел скачать новомодный тогда GNU superoptimizer и показать его сослуживцам. Псевдокод, эквивалентный запатентованному, выдается по команде superopt -fabs .

Патентное бюро закрывается, нас всех тошнит.
Page generated Mar. 6th, 2026 10:44 am
Powered by Dreamwidth Studios