diff options
author | aiju <devnull@localhost> | 2016-08-08 22:19:29 +0200 |
---|---|---|
committer | aiju <devnull@localhost> | 2016-08-08 22:19:29 +0200 |
commit | a07a2025dab770421992362d8f4e4acbbf776fa8 (patch) | |
tree | e3e25f5fb3022ff86c9c118e44a6787c16584732 /sys | |
parent | 590a4980bcf1ba21b3ddbef032bc4ca0589c840c (diff) |
document mplogic functions
Diffstat (limited to 'sys')
-rw-r--r-- | sys/man/2/mp | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/sys/man/2/mp b/sys/man/2/mp index 182bca7e2..5223c8a10 100644 --- a/sys/man/2/mp +++ b/sys/man/2/mp @@ -106,6 +106,27 @@ void mpleft(mpint *b, int shift, mpint *res) void mpright(mpint *b, int shift, mpint *res) .PP .B +void mpand(mpint *b1, mpint *b2, mpint *res) +.PP +.B +void mpbic(mpint *b1, mpint *b2, mpint *res) +.PP +.B +void mpor(mpint *b1, mpint *b2, mpint *res) +.PP +.B +void mpnot(mpint *b, mpint *res) +.PP +.B +void mpxor(mpint *b1, mpint *b2, mpint *res) +.PP +.B +void mptrunc(mpint *b, int n, mpint *res) +.PP +.B +void mpxtend(mpint *b, int n, mpint *res) +.PP +.B void mpmul(mpint *b1, mpint *b2, mpint *prod) .PP .B @@ -545,6 +566,42 @@ is assigned to .IR res . .PD .PP +Logical operations (treating negative numbers using two's complement): +.TF mpxtend_ +.TP +.I mpand +.BR "res = b1 & b2" . +.TP +.I mpbic +.BR "res = b1 & ~b2" . +.TP +.I mpor +.BR "res = b1 | b2" . +.TP +.I mpxor +.BR "res = b1 ^ b2" . +.TP +.I mpnot +.BR "res = ~b1" . +.TP +.I mptrunc +truncates +.I b +to +.I n +bits and stores the result in +.IR res . +The result is never negative. +.TP +.I mpxtend +truncates +.I b +to +.I n +bits, sign extends the MSB and stores the result in +.IR res . +.PD +.PP Modular arithmetic: .TF mpmodmul_ .TP |