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
.\" 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 isub(3),
.BR iadc(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),
.BR ineg(3),
.BR inot(3),
.BR iand(3),
.BR itest(3),
.BR icmp(3),
.BR ior(3),
.BR ixor(3),
.BR iinc(3),
.BR idec(3),
.BR ixchg(3),
.BR icpy(3),
.BR icvt(3),
.BR imul(3),
.BR ismul(3),
.BR idiv(3),
.BR isdiv(3),
.BR iatoi(3),
.BR iatoui(3),
.BR iitoa(3),
.BR iuitoa(3).