Team-Fly
Previous Section Next Section

C.3 Macros with Parameters

clint2str_l
     (n_l, base)
CLINT2STR_L)
     (n_l, base)

xclint2str_l((n_l),(base),0)

representation of a CLINT object as character string without prefix

DISP_L (S, A)

printf("%s%s\n%u bit\n\n",
(S), HEXSTR_L(A), ld_l(A))

standard output of a CLINT object

HEXSTR_L (n_l)

xclint2str_l((n_l), 16, 0)

conversion of a CLINT object into hex representation

DECSTR_L (n)

xclint2str_l((n), 10, 0)

conversion of a CLINT object into decimal representation

OCTSTR_L (n_l)

xclint2str_l((n_l), 8, 0)

conversion of a CLINT object into octal representation

BINSTR_L (n_l)

xclint2str_l((n_l), 2, 0)

conversion of a CLINT object into binary representation

SET_L (n_l, ul)

ul2clint_l((n_l), (ul))

assignment n_l ULONG ul

SETZERO_L (n_l)

(*(n_l) = 0)

set n_l to 0

SETONE_L (n_l)

u2clint_l((n_l), 1U)

set n_l to 1

SETTWO_L (n_l)

u2clint_l((n_l), 2U)

set n_l to 2

ASSIGN_L
     (a_l, b_l)

cpy_l((a_l), (b_l))

assignment a_l b_l

ANDMAX_L (a_l)

SETDIGITS_L((a_l),
(MIN(DIGITS_L(a_l),
(USHORT)CLINTMAXDIGIT));
RMLDZRS_L((a_l))

reduction modulo (Nmax + 1)

DIGITS_L (n_l)

(*(n_l))

read number of digits of n_l to base B

SETDIGITS_L
     (n_l, 1)

(*(n_l) = (USHORT)(l))

set number of digits n_l to l

INCDIGITS_L (n_l)

(++*(n_l))

increase number of digits by 1

DECDIGITS_L (n_l)

(−−*(n_l))

reduce number of digits by 1

LSDPTR_L (n_l)

((n_l) + 1)

pointer to least-significant digit of a CLINT object

MSDPTR_L (n_l)

((n_l) + DIGITS_L(n_l))

pointer to most-significant digit of a CLINT object

RMLDZRS_L (n_l)

while((DIGITS_L(n_l) >
0)&& (*MSDPTR_L(n_l) == 0))
{DECDIGITS_L(n_l);}

remove leading zeros from a CLINT object

SWAP (a, b)

((a)^=(b),(b)^=(a),(a)^=(b))

exchange

SWAP_L (a_l, b_l)

(xor_l((a_l),(b_l),(a_l)),
xor_l((b_l),(a_l),(b_l)),
xor_l((a_l),(b_l),(a_l)))

exchange two CLINT values

LT_L (a_l, b_l)

(cmp_l((a_l), (b_l)) == 1)

comparison a_l < b_l

LE_L (a_l, b_l)

(cmp_l((a_l), (b_l)) < 1)

comparison a_l b_l

GT_L (a_l, b_l)

(cmp_l((a_l), (b_l)) == 1)

comparison a_l > b_l

GE_L (a_l, b_l)

(cmp_l((a_l), (b_l)) > 1)

comparison a_l b_l

GTZ_L (a_l)

(cmp_l((a_l), nul_l) == 1)

comparison a_l > 0

EQZ_L (a_l)

(equ_l((a_l), nul_l) == 1)

comparison a_l == 0

EQONE_L (a_l)

(equ_l((a_l), one_l) == 1)

comparison a_l == 1

MIN_L (a_l, b_l)

(LT_L((a_l), (b_l))
? (a_l) : (b_l))

minimum of two CLINT values

MAX_L (a_l, b_l)

(GT_L((a_l), (b_l)) ? (a_l) :
(b_l))

maximum of two CLINT values

ISEVEN_L (n_l)

(DIGITS_L(n_l) == 0 ||
(DIGITS_L(n_l) > 0 &&
(*(LSDPTR_L(n_l)) & 1U) ==
0))

test whether n_l is odd

ISODD_L (n_l)

(DIGITS_L(n_l) > 0 &&
(*(LSDPTR_L(n_l)) & 1U) == 1)

test whether n_l is odd

MEXP_L (a_l, e_l,
    p_l, n_l)

mexpk_l((a_l), (e_l), (p_l),
(n_l))

exponentiation

MEXP_L (a_l, e_l,
     p_l, n_l)

mexp5_l((a_l), (e_l),
    (p_l), (n_l))
mexpkm_l((a_l), (e_l),
    (p_l), (n_l))
mexp5m_l((a_l), (e,_l),
    (p_l), (n_l))

exponentiation, alternative

INITRAND64_LT()

seed64_l((unsigned long)
time(NULL)

initialization of random number generator rand64_l() with system clock

INITRANDBBS_Lt()

seedBBS_l((unsigned long)
time(NULL)

initialization of the random bit generator randbit_l() by means of system clock

ISPRIME_L (n_l)

prime_l((n_l), 302, 5)

primality test with fixed parameters

ZEROCLINT_L (n_l)

 

memset((A), 0,
sizeof(A))


Team-Fly Previous Section Next Section