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
.TH isdiv 3  "December 27, 2024" "libmpu" "LibMPU Programmer's Manual"
.SH NAME
\fBisdiv\fP \- signed division of integers
.SH SYNOPSIS
.nf
.B #include <libmpu.h>
.PP
.BI "void isdiv( mpu_int *" quot ", mpu_int *" rem ", mpu_int *" num ", mpu_int *" den ", int " nb " );
.fi
.SH DESCRIPTION
The \fBisdiv()\fP function performs the operation of dividing the variable located at \fBnum\fP,
by the variable located at \fBden\fP, taking into account the sign of the variables. The result
is placed at \fBquot\fP. The remainder of the division is placed at \fBrem\fP. The contents of
the memory at addresses \fBnum\fP, \fBden\fP are not changed, the previous contents of memory
at addresses \fBquot\fP and \fBrem\fP are lost. The \fBnb\fP parameter determines the size of
the operands (in bytes) located at the addresses \fBquot\fP, \fBrem\fP, \fBnum\fP, \fBden\fP.
.PP
The function affects the flags \fBA\fP, \fBC\fP, \fBO\fP, \fBP\fP, \fBS\fP, \fBZ\fP, \fBR\fP.
.PP
The \fBA\fP flag is reset to 0. The \fBP\fP flag is set only when the size of the \fBprod\fP
operand is one or two bytes (\fBnb\fP == 1 || \fBnb\fP == 2). The \fBR\fP (major || remainder)
flag is set when the remainder is obtained of the division.
.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 iroln(3),
.BR irorn(3),
.BR ircln(3),
.BR ircrn(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 iatoi(3),
.BR iatoui(3),
.BR iitoa(3),
.BR iuitoa(3).