[BACK]Return to char2ff.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-doc / int-parts / datatype

File: [local] / OpenXM / src / asir-doc / int-parts / datatype / char2ff.texi (download)

Revision 1.1, Mon Apr 23 05:45:36 2001 UTC (23 years, 2 months ago) by noro
Branch: MAIN
CVS Tags: R_1_3_1-2, RELEASE_1_3_1_13b, RELEASE_1_2_3_12, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, KNOPPIX_2006, HEAD, DEB_REL_1_2_3-9

Risa/Asir manual on the internal specifications.

@comment $OpenXM: OpenXM/src/asir-doc/int-parts/datatype/char2ff.texi,v 1.1 2001/04/23 05:45:36 noro Exp $
@section $BI8?t(B 2 $B$NM-8BBN$N85(B

@example
struct oGF2N @{        GF(2^n) $B$N85(B
    short id;         $B<1JL;R(B (= O_N)
    char nid;         $B?t<1JL;R(B (= N_GF2N)
    char pad;       
    struct oUP2 *body;  GF(2^n) $B$N85(B
@};

typedef struct oGF2N *GF2N;

typedef struct oUP2 @{   GF(2) $B>e$N(B 1 $BJQ?tB?9`<0(B
    int w;              $BG[Ns(B b $B$N%5%$%:(B
    unsigned int b[1];  $B78?tG[Ns(B (dense $BI=8=(B)
@} *UP2;

typedef struct oUP2 *UP2;
@end example
$BI8?t(B 2 $B$NM-8BBN$r07$&$?$a$N7?$G$"$k(B. $BI8?t$O(B UP2 $B7?$NB?9`<0$H$7$F$"$k@EE*JQ(B
$B?t$K3JG<$5$l$k(B. $B3F85<+BN$OB0$9$kBN$K4X$9$k>pJs$r$b$C$F$*$i$:(B, $B@_Dj$5$l$?(B
$BI8?t$NCM$K$h$j1i;;$,9T$o$l$k(B.

@subsection $BI8?t(B 2 $B$NM-8BBN$N85$N@8@.(B, $BJQ49(B
@example
#include "ca.h"
void setmod_gf2n(P p)
$B@0?t78?tB?9`<0(B p $B$N3F78?t$r(B GF(2) $B$N85$H$_$?B?9`<0$r(B, GF(2) $B$N3HBgBN$N(B
$BDj5AB?9`<0$H$7$F@_Dj$9$k(B. $BB?9`<0$N(B GF(2) $B>e$N4{Ls@-$O%A%'%C%/$7$J$$(B. 

void getmod_gf2n(UP2 *p)

$B$=$N;~E@$G@_Dj$5$l$F$$$kDj5AB?9`<0$r(B UP2 $B7A<0$GJV$9(B. 

void ptogf2n(Obj q,GF2N *l)

$B@0?t78?tB?9`<0(B p $B$N3F78?t$r(B GF(2) $B$N85$H$_$?B?9`<0$r(B, GF2N $B7?$KJQ49$9$k(B. 
$BDj5AB?9`<0$,@_Dj$5$l$F$$$k(B, $B$$$J$$$K$+$+$o$i$:(B, $B4JC12=$O9T$o$J$$(B. 

void gf2ntop(GF2N q,P *l)
ptogf2n() $B$N5UA`:n$G$"$k(B. 

void simpgf2n(GF2N n,GF2N *r)
body $B$,(B, n $B$N(B body $B$N$=$N;~E@$G@_Dj$5$l$F$$$kDj5AB?9`<0$K$h$k>jM>$G$"$k(B
$B$h$&$J(B GF2N $B7?$N85$r@8@.$9$k(B. 
@end example
@noindent

@subsection $B;MB'(B
@noindent
$B0z?t$O(B F(2^n)$B$N85$^$?$OM-M}?t(B. $BM-M}?t$O$=$N;~E@$G@_Dj$5$l$F$$$k(BGF(2^n) 
$B$N85$KJQ49$5$l$k(B.

@example
#include "ca.h"

addgf2n(GF2N a,GF2N b,GF2N *rp)
*rp = a + b

subgf2n(GF2N a,GF2N b,GF2N *rp)
*rp = a - b

mulgf2n(GF2N a,GF2N b,GF2N *rp)
*rp = a * b

divgf2n(GF2N a,GF2N b,GF2N *rp)
*rp = a / b

pwrgf2n(GF2N a,Q e,GF2N *rp)
*rp = a ^ e

int cmpgf2n(GF2N a,GF2N b)
body $B$NCM$r(B GF(2) $B>e$NB?9`<0$H$7$FHf3S(B
@end example