zsplit.3 - libzahl - big integer library
 (HTM) git clone git://git.suckless.org/libzahl
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
       zsplit.3 (744B)
       ---
            1 .TH ZSPLIT 3 libzahl
            2 .SH NAME
            3 zsplit - Split a big integer in two parts
            4 .SH SYNOPSIS
            5 .nf
            6 #include <zahl.h>
            7 
            8 void zsplit(z_t \fIhigh\fP, z_t \fIlow\fP, z_t \fIa\fP, size_t \fIn\fP);
            9 .fi
           10 .SH DESCRIPTION
           11 .B zsplits
           12 splits
           13 .I a
           14 into two parts. The lowest
           15 .I n
           16 bits are stored in
           17 .IR low ,
           18 and the rest of the bits are
           19 stored in
           20 .IR high .
           21 The result stored in
           22 .I high
           23 is shifted
           24 .I n
           25 bits to the right. Both
           26 .I high
           27 and
           28 .I low
           29 will have the same sign as
           30 .IR a .
           31 .P
           32 It is safe to call
           33 .B zsplit
           34 with
           35 .I "(high==a)"
           36 and
           37 .IR "(low==a)" .
           38 .SH RATIONALE
           39 Splitting big integers in the described way is useful
           40 for divide-and-conquer algorithms.
           41 .SH SEE ALSO
           42 .BR zand (3),
           43 .BR zor (3),
           44 .BR zxor (3),
           45 .BR znot (3),
           46 .BR zlsh (3),
           47 .BR zrsh (3),
           48 .BR zbits (3)