[cdev] зад
Grigoriy A. Sitkarev
sitkarev на komitex.ru
Пн Сен 12 01:29:52 MSK 2011
Очень хорошо что хотите попробовать.
Ничего сложного там нет. В пример я добавил ещё сложение с насыщением.
Такая арифметика обнаруживает переполнение и вместо сложения по модулю,
устанавливает в результат минимальное или максимальное значение.
Задача разобраться почему функция sat_add_no64bit() работает также как и
sat_add(), но при этом не использует 64-х разрядную арифметику. Есть
подсказка:
1. Переполнение может возникать тогда когда складываются числа с
одинаковыми знаками.
2. Переполнение никогда не возникает если складываются числа с разными
знаками.
3. При переполнении результат имеет знак, обратный знаку результата без
переполнения. Т.е. если складывались положительное и положительное
число, при переполнении результат будет отрицательным. Если складывались
отрицательное и отрицательное число, при переполнении результат будет
положительным.
(+A) + (+A) = -B <== Переполнение!
(-A) + (-A) = +B <== Переполнение!
Если будут вопросы, пишите в рассылку.
Забрать файлы можно или через subversion:
$ svn co http://wiki.syktsu.ru/svn/course
Или через HTTP смотреть на http://wiki.syktsu.ru/websvn каталог `course':
http://wiki.syktsu.ru/websvn/listing.php?repname=course&path=%2F&sc=0
--
Г.А.
11.09.2011 23:26, Ser пишет:
> Григорий Александрович, выложите пожалуйста исходники программы которую мы
> разбирали в субботу(135 группа) 10.09.11, хотелось бы попробовать
> разобраться.
Подробная информация о списке рассылки cdev