🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

7 total messages Started by Borneq Wed, 28 Jun 2017 16:44
Więcej niż 64 bity
#309316
Author: Borneq
Date: Wed, 28 Jun 2017 16:44
6 lines
1107 bytes
Mam pewien problem: w Ethereum
http://ethdocs.org/en/latest/ether.html
Ether = 1e18 jednostek podstawowych, po pomnożeniu przez kilkadziesiąt 
milionów nie zmieści się to nawet w 64 bitach.
Jak w C++ użyć 128 bitów? trzeba boost? jakie metody konwertują zapis 
hex<->dec dla 128 bitów?
Re: Więcej niż 64 bity
#309317
Author: Borneq
Date: Wed, 28 Jun 2017 16:55
10 lines
1268 bytes
W dniu 28.06.2017 o 18:44, Borneq pisze:
> Mam pewien problem: w Ethereum
> http://ethdocs.org/en/latest/ether.html
> Ether = 1e18 jednostek podstawowych, po pomnożeniu przez kilkadziesiąt 
> milionów nie zmieści się to nawet w 64 bitach.
> Jak w C++ użyć 128 bitów? trzeba boost? jakie metody konwertują zapis 
> hex<->dec dla 128 bitów?

a __m128i ?
da rade w GCC w Linuxie?
Re: Więcej niż 64 bity
#309322
Author: Sebastian Biały
Date: Wed, 28 Jun 2017 19:06
5 lines
1073 bytes
On 6/28/2017 6:44 PM, Borneq wrote:
> Ether = 1e18 jednostek podstawowych, po pomnożeniu przez kilkadziesiąt 
> milionów nie zmieści się to nawet w 64 bitach.

http://www.ttmath.org/
Re: Więcej niż 64 bity
#309318
Author: bartekltg
Date: Wed, 28 Jun 2017 20:06
23 lines
1659 bytes
On 28.06.2017 18:55, Borneq wrote:
> W dniu 28.06.2017 o 18:44, Borneq pisze:
>> Mam pewien problem: w Ethereum
>> http://ethdocs.org/en/latest/ether.html
>> Ether = 1e18 jednostek podstawowych, po pomnożeniu przez kilkadziesiąt
>> milionów nie zmieści się to nawet w 64 bitach.
>> Jak w C++ użyć 128 bitów? trzeba boost? jakie metody konwertują zapis
>> hex<->dec dla 128 bitów?
>
> a __m128i ?
> da rade w GCC w Linuxie?

Nie.

W gcc użyj __int128, ale jest on obszarpany z przydatnych rzeczy,
jak gadanie z operatorami strmieni >> << czy inicjowanie wiekszej
liczby.
Ogolnie... użyj boosta :)
#include <boost/multiprecision/cpp_int.hpp>
Tam masz też dowolną precyzję, a nie musisz instalować GMP.

pzdr
bartekltg
Re: Więcej niż 64 bity
#309319
Author: Borneq
Date: Thu, 29 Jun 2017 05:19
6 lines
1194 bytes
W dniu 28.06.2017 o 22:06, bartekltg pisze:
> #include <boost/multiprecision/cpp_int.hpp>
> Tam masz też dowolną precyzję, a nie musisz instalować GMP.

A jak z postaci tekstowej hex przekonwertować na int128 i z tej na 
postać tekstową dziesiętną?
Re: Więcej niż 64 bity
#309320
Author: bartekltg
Date: Thu, 29 Jun 2017 06:09
13 lines
1350 bytes
On 29.06.2017 07:19, Borneq wrote:
> W dniu 28.06.2017 o 22:06, bartekltg pisze:
>> #include <boost/multiprecision/cpp_int.hpp>
>> Tam masz też dowolną precyzję, a nie musisz instalować GMP.
>
> A jak z postaci tekstowej hex przekonwertować na int128 i z tej na
> postać tekstową dziesiętną?


Tak samo jak w przypadku int64_t

pzdr
bartekltg
Re: Więcej niż 64 bity
#309321
Author: M.M.
Date: Thu, 29 Jun 2017 21:14
14 lines
1883 bytes
On Wednesday, June 28, 2017 at 6:55:27 PM UTC+2, Borneq wrote:
> W dniu 28.06.2017 o 18:44, Borneq pisze:
> > Mam pewien problem: w Ethereum
> > http://ethdocs.org/en/latest/ether.html
> > Ether = 1e18 jednostek podstawowych, po pomnożeniu przez kilkadziesiąt 
> > milionów nie zmieści się to nawet w 64 bitach.
> > Jak w C++ użyć 128 bitów? trzeba boost? jakie metody konwertują zapis 
> > hex<->dec dla 128 bitów?
> 
> a __m128i ?
> da rade w GCC w Linuxie?

Dlaczego nie sprawdzisz? Moim zdaniem powinien dać radę, ale lepiej użyć 
boosta.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads