Почему мы не используем «unsigned int» вместо «char» для реализации большого целочисленного класса? - PullRequest
0 голосов
/ 11 июля 2011

Я использовал для реализации чего-то, действующего как очень большое целое число, используя char. Но мне вдруг пришло в голову, что я могу использовать unsigned int, что проще в реализации.

Например, я использую каждый unsigned int для хранения не более 9 999 999 и использую самую значимую цифру в качестве буфера для увеличения до «следующего» * ​​1006 *.

Таким образом, я могу использовать 4 байта для 7 цифр вместо 4 цифр при использовании char.

Итак, почему бы нам не реализовать большой целочисленный класс с unsigned int?

1 Ответ

3 голосов
/ 11 июля 2011

Кто сказал, что вы не используете uint для BigInteger?Реализация BigInteger в C # BCL (в System.Numerics) использует uint [] для хранения своих битов.

В целом, будет более эффективно использовать биты для представления числа, а не биты для представлениясимвольная цифра числа.

...