-
Notifications
You must be signed in to change notification settings - Fork 4
Big Number
GoblinBear edited this page Apr 11, 2019
·
6 revisions
-
UInt128/Int128 -
UInt256/Int256 -
UInt512/Int512 -
UIntVar/IntVar
// unsigned integer
v1 := types.NewUInt128("18446744073709551618254", 10)
v2 := types.NewUInt256("18446744073709551618254", 10)
v3 := types.NewUInt512("18446744073709551618254", 10)
v4 := types.NewUIntVar("18446744073709551618254", 10, 32)
// signed integer
v5 := types.NewUInt128("-18446744073709551618254", 10)
v6 := types.NewUInt128("-18446744073709551618254", 10)
v7 := types.NewUInt128("-18446744073709551618254", 10)
v8 := types.NewUInt128("-18446744073709551618254", 10, 32)Call method Get()
v := types.NewUInt256(2)
data := v.Get()Call method Set()
newValue := []byte{
208, 8, 0, 0, 0, 0, 0, 0, 232, 3, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
}
v := types.NewUInt256(2)
v.Set(newValue)LShift()RShift()
v1 := types.NewUInt256("256848659713813", 10)
v2 := v1.LShift(13)Not()And()Or()Xor()
v1 := types.NewUInt256("256848659713813", 10)
v2 := types.NewUInt256("1684661315868486", 10)
// not v1
r1 := v1.Not()
// v1 and v2
r2 := v1.And(v2)Add()Sub()Multiply()Divide()Modulo()
v1 := types.NewUInt256("256848659713813", 10)
v2 := types.NewUInt256("1684661315868486", 10)
// v1 add v2
r := v1.Add(v2)