Вниз
Скачать: CL | DM;

Большие целые числа (128бит) и математические операции с ними   Найти похожие ветки 

← →
Slym ©   (2003-11-14 10:49) [0]

Посоветуйте как можно сделать
1. большое целое число 128бит и более (256,512)
2. и как с этим работать метематически +/-, */:, div/mod?


← →
Erik ©   (2003-11-14 11:15) [1]

Наверное придется эмулировать, знаеш как работать с начала со старшим байтом потом с младшим. Желательно делать на ASM, будет проще и быстрее. Как вариант можно использовать число(LongWord) умножить на 10 в степени. И работать с record
TBigNumber = record
Value: LongWord(Integer);
Mul: LongWord;
end;
Тоесть можно получать очень большие числа Value * 10^Mul, но обрабатывать придется по отдельности. Можно еще готовае библиотеки поискать они точно есть.


← →
TUser ©   (2003-11-14 11:20) [2]

Если по-отдельности работать с малдшими и старшими частями не хочется, а хочется писать просто A+B - тогда в Сях.


← →
Slym ©   (2003-11-17 05:05) [3]

Мне хотябы получать обрезок от переполнения при мат операции...
Не знаете MMX, SSE (кстати у SSE 128 битные регистры :), но расчитаны на 32*4 :( ) могут сбрасывать переполнение в др. регистр?


← →
Кен ©   (2003-11-17 05:22) [4]

Наверно надо объявлять массивы что-нибудь типа array[0..4] of Int64 и работать с ними вместо чисел.
Писать функции под них типа plus minus и т. д. Только уж очень геморойно. Может есть уже какие библеотеки готовые ?


← →
icWasya ©   (2003-11-17 09:26) [5]

Посмотри здесь
http://algolist.manual.ru/maths/longnum.php



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
3-89743
Sherbacov
2003-11-07 23:59
2003.11.27
Вопрос по ADO


1-89866
Varelik
2003-11-13 14:01
2003.11.27
Рассыпается дизайн при смене крупного шрифта системы на мелкий.


3-89691
Denisiy
2003-11-06 12:11
2003.11.27
Ошибка после прерывания проги в отладке


1-89971
MakNik
2003-11-17 15:33
2003.11.27
Формы


14-90069
sniknik
2003-11-05 14:54
2003.11.27
Прикол, возможно старый но я его вижу впервые...




   Наверх