2010-03-25 2 views
0

В библиотеке GMP,GMP размера битого переменной

_mp_size содержит число конечностей целого ..

мы можем создать целые числа размера 1 конечности (32 бит), 2 конечностей (64bits), 3 конечностей (96 бит) ... так далее. используя функции mpz_init или mpz_random.

Невозможно создать целочисленную переменную размером 8 бит или 16 бит .. кроме кратных 32-битного размера ???

Можете ли вы код для этого?

спасибо ..

ответ

0

Это было бы ограниченное применение, так как большинство современных процессоров используют по крайней мере 32-битный размер слова.

0

Я не думаю, что вы можете. Вот выдержка из обсуждения на http://gmplib.org/list-archives/gmp-discuss/2004-June/001200.html:

Размер конечности компилируется в библиотеку, и определяется из доступных типов tghe [так] процессора и принимающей среды.

1

Библиотека GNU GMP предназначена для чисел, превышающих диапазоны, обеспечиваемые стандартными типами C. Используйте (unsigned) char или (unsigned) short для 8 и 16 битных целых чисел соответственно.