mp(3mp) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

mp(3mp)

mp(3MP)              Multiple Precision Library Functions              mp(3MP)

NAME
       mp,  mp_madd,  mp_msub,  mp_mult,  mp_mdiv,  mp_mcmp,  mp_min, mp_mout,
       mp_pow, mp_gcd, mp_rpow, mp_msqrt, mp_sdiv, mp_itom, mp_xtom,  mp_mtox,
       mp_mfree - multiple precision integer arithmetic

SYNOPSIS
       cc [ flag... ] file... -lmp [ library... ]
       #include <mp.h>

       void mp_madd(MINT *a, MINT *b, MINT *c);


       void mp_msub(MINT *a, MINT *b, MINT *c);


       void mp_mult(MINT *a, MINT *b, MINT *c);


       void mp_mdiv(MINT *a, MINT *b, MINT *q, MINT *r);


       int mp_mcmp(MINT *a, MINT *b);


       int mp_min(MINT *a);


       void mp_mout(MINT *a);


       void mp_pow(MINT *a, MINT *b, MINT *c, MINT *d);


       void mp_gcd(MINT *a, MINT *b, MINT *c);


       void mp_rpow(MINT *a, short n, MINT *b);


       int mp_msqrt(MINT *a, MINT *b, MINT *r);


       void mp_sdiv(MINT *a, short n, MINT *q, short *r);


       MINT * mp_itom(short n);


       MINT * mp_xtom(char *a);


       char * mp_mtox(MINT *a);


       void mp_mfree(MINT *a);

DESCRIPTION
       These functions perform arithmetic on integers of arbitrary length. The
       integers  are  stored  using  the defined type MINT. Pointers to a MINT
       should be initialized using the function  mp_itom(n),  which  sets  the
       initial value to n. Alternatively, mp_xtom(a) may be used to initialize
       a  MINT from a string of hexadecimal digits. mp_mfree(a) may be used to
       release the storage allocated by the  mp_itom(a)  and  mp_xtom(a)  rou‐
       tines.


       The  mp_madd(a,b,c), mp_msub(a,b,c) and mp_mult(a,b,c) functions assign
       to their third arguments the  sum,  difference,  and  product,  respec‐
       tively, of their first two arguments. The mp_mdiv(a,b,q,r) function as‐
       signs the quotient and remainder, respectively, to its third and fourth
       arguments. The mp_sdiv(a,n,q,r) function is similar to mp_mdiv(a,b,q,r)
       except  that  the  divisor  is an ordinary integer. The mp_msqrt(a,b,r)
       function produces the square root and remainder of its first  argument.
       The  mp_mcmp(a,b) function compares the values of its arguments and re‐
       turns  0  if  the  two  values are equal, a value greater than 0 if the
       first argument is greater than the second, and a value less than  0  if
       the second argument is greater than the first. The mp_rpow(a,n,b) func‐
       tion  raises  a  to  the  nth  power  and  assigns this value to b. The
       mp_pow(a,b ,c,d) function raises a to the bth power, reduces the result
       modulo  c and assigns this value to d.  The  mp_min(a)  and  mp_mout(a)
       functions  perform decimal input and output. The mp_gcd(a,b,c) function
       finds the greatest common divisor of the first two arguments, returning
       it in the third argument. The mp_mtox( a) function provides the inverse
       of mp_xtom(a). To release  the  storage  allocated  by  mp_mtox(a)  use
       free() (see malloc(3C)).


       Use the -lmp loader option to obtain access to these functions.

FILES
       /usr/lib/libmp.so    shared object


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ MT-LevelUnsafe


SEE ALSO
       malloc(3C), libmp(3LIB), exp(3M), attributes(7)

DIAGNOSTICS
       Illegal operations and running out of memory produce messages and  core
       images.

WARNINGS
       The  function pow() exists in both libmp and libm with widely differing
       semantics. This is the reason libmp.so.2 exists.

Oracle Solaris 11.4               14 Nov 2002                          mp(3MP)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3