[#base_uint-0d]
= xref:base_uint-02.adoc[base&lowbar;uint]&lt;256&gt;
:mrdocs:

== Synopsis

Declared in `&lt;arith&lowbar;uint256&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;&gt;
class xref:base_uint-02.adoc[base&lowbar;uint]&lt;256&gt;;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:base_uint-0d/2constructor-02.adoc[`base&lowbar;uint`]         [.small]#[constructor]#
| Constructors
| xref:base_uint-0d/operator_assign-04.adoc[`operator&equals;`] 
| Assignment operators
| xref:base_uint-0d/CompareTo.adoc[`CompareTo`] 
| Numeric ordering, treating the value as an unsigned integer rather than a byte blob&period;
| xref:base_uint-0d/EqualTo.adoc[`EqualTo`] 
| Tests whether the value equals a 64&hyphen;bit unsigned number&period;
| xref:base_uint-0d/GetHex.adoc[`GetHex`] 
| Hex encoding of the number (with the most significant digits first)&period;
| xref:base_uint-0d/GetLow64.adoc[`GetLow64`] 
| Returns the low 64 bits of the value&period;
| xref:base_uint-0d/ToString.adoc[`ToString`] 
| Returns the value as a human&hyphen;readable string&period;
| xref:base_uint-0d/bits.adoc[`bits`] 
| Returns the position of the highest bit set plus one, or zero if the value is zero&period;
| xref:base_uint-0d/getdouble.adoc[`getdouble`] 
| Converts the value to a double&hyphen;precision floating&hyphen;point number&period;
| xref:base_uint-0d/operator_and_eq.adoc[`operator&amp;&equals;`] 
| Applies a bitwise AND with another big integer in place&period;
| xref:base_uint-0d/operator_star_eq-0a.adoc[`operator&ast;&equals;`] 
| Multiplication assignment operators
| xref:base_uint-0d/operator_inc-0d5.adoc[`operator&plus;&plus;`] 
| Increment operators
| xref:base_uint-0d/operator_plus_eq-014.adoc[`operator&plus;&equals;`] 
| Addition assignment operators
| xref:base_uint-0d/operator_minus.adoc[`operator&hyphen;`] 
| Returns the two&apos;s&hyphen;complement negation of the value&period;
| xref:base_uint-0d/operator_dec-0d.adoc[`operator&hyphen;&hyphen;`] 
| Decrement operators
| xref:base_uint-0d/operator_minus_eq-0a.adoc[`operator&hyphen;&equals;`] 
| Subtraction assignment operators
| xref:base_uint-0d/operator_slash_eq.adoc[`operator&sol;&equals;`] 
| Divides this value by another big integer in place&period;
| xref:base_uint-0d/operator_lshift_eq.adoc[`operator&lt;&lt;&equals;`] 
| Shifts the value left by the given number of bits in place&period;
| xref:base_uint-0d/operator_rshift_eq.adoc[`operator&gt;&gt;&equals;`] 
| Shifts the value right by the given number of bits in place&period;
| xref:base_uint-0d/operator_xor_eq-01.adoc[`operator&circ;&equals;`] 
| Bitwise exclusive&hyphen;or assignment operators
| xref:base_uint-0d/operator_or_eq-00.adoc[`operator&verbar;&equals;`] 
| Bitwise disjunction assignment operators
| xref:base_uint-0d/operator_bitnot.adoc[`operator&#126;`] 
| Returns the bitwise complement of the value&period;
| xref:base_uint-0d/size.adoc[`size`] 
| Returns the size in bytes of the internal representation&period;
|===


== Protected Data Members

[cols="1,4"]
|===
| Name| Description
| xref:base_uint-0d/pn.adoc[`pn`] 
| Big integer represented with 32&hyphen;bit digits, least&hyphen;significant first&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:operator_eq-050.adoc[operator&equals;&equals;]`
| Tests whether a big integer equals a 64&hyphen;bit value&period;
| `xref:operator_3way-00f.adoc[operator&lt;&equals;&gt;]`
| Performs a three&hyphen;way comparison of two big integers&period;
| `xref:operator_eq-007d.adoc[operator&equals;&equals;]`
| Tests whether two big integers are equal&period;
| `xref:operator_star-00.adoc[operator&ast;]`
| Returns the product of a big integer and a 32&hyphen;bit value&period;
| `xref:operator_lshift-07.adoc[operator&lt;&lt;]`
| Returns the value shifted left by a number of bits&period;
| `xref:operator_rshift-03.adoc[operator&gt;&gt;]`
| Returns the value shifted right by a number of bits&period;
| `xref:operator_xor-08.adoc[operator&circ;]`
| Returns the bitwise XOR of two big integers&period;
| `xref:operator_bitand-07.adoc[operator&amp;]`
| Returns the bitwise AND of two big integers&period;
| `xref:operator_bitor-04.adoc[operator&verbar;]`
| Returns the bitwise OR of two big integers&period;
| `xref:operator_slash-0e.adoc[operator&sol;]`
| Returns the quotient of two big integers&period;
| `xref:operator_star-0ee.adoc[operator&ast;]`
| Returns the product of two big integers&period;
| `xref:operator_minus-07.adoc[operator&hyphen;]`
| Returns the difference of two big integers&period;
| `xref:operator_plus-0a6.adoc[operator&plus;]`
| Returns the sum of two big integers&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
