Math Processor Unit Library

libmpu – library of arithmetic functions for integer, real, and complex numbers of increased digit capacity

16 Commits   0 Branches   2 Tags
author: kx <kx@radix-linux.su> 2024-12-30 12:16:19 +0300 committer: kx <kx@radix-linux.su> 2024-12-30 12:16:19 +0300 commit: af4d49422d9c2db9223933cc251c8ba6b4944580 parent: ebc15ef0c9527c78a6462a9b8ed61887d52fb434
Commit Summary:
man: Shift operations by N bits
Diffstat:
1 file changed, 37 insertions, 0 deletions
diff --git a/man/circular-shifts-n.3mpu b/man/circular-shifts-n.3mpu
new file mode 100644
index 0000000..9eeac3d
--- /dev/null
+++ b/man/circular-shifts-n.3mpu
@@ -0,0 +1,38 @@
+.\" Copyright 2024 Andrew V.Kosteltsev (kx@radix-linux.su)
+.\"
+.\"
+.TH circular\-shifts\-n 3  "December 27, 2024" "libmpu" "LibMPU Programmer's Manual"
+.SH NAME
+\fBiroln\fP, \fBirorn\fP, \fBircln\fP, \fBircrn\fP \- cyclic shift operations by \fBn\fP bits
+.SH SYNOPSIS
+.nf
+.B #include <libmpu.h>
+.PP
+.BI "void iroln( mpu_int *" c ", mpu_int *" a ", unsigned int " ns ", int " nb " );
+.BI "void irorn( mpu_int *" c ", mpu_int *" a ", unsigned int " ns ", int " nb " );
+.BI "void ircln( mpu_int *" c ", mpu_int *" a ", unsigned int " ns ", int " nb " );
+.BI "void ircrn( mpu_int *" c ", mpu_int *" a ", unsigned int " ns ", int " nb " );
+.fi
+.SH DESCRIPTION
+The action of these functions is similar to \fBirol\fP(), \fBiror\fP(), \fBircl\fP(), \fBircr\fP(),
+except that they shift their operands by the number of bits specified by the \fBns\fP parameter.
+The state of the carry flag \fBC\fP is determined by the last pushed outward bit.
+.sp
+.SH SEE ALSO
+.BR iadd(3),
+.BR iadc(3),
+.BR isub(3),
+.BR isbb(3),
+.BR ishl(3),
+.BR ishr(3),
+.BR isal(3),
+.BR isar(3),
+.BR irol(3),
+.BR iror(3),
+.BR ircl(3),
+.BR ircr(3),
+.BR ishln(3),
+.BR ishrn(3),
+.BR isaln(3),
+.BR isarn(3).
+