.TH ismul 3 "December 27, 2024" "libmpu" "LibMPU Programmer's Manual"
.SH NAME
\fBismul\fP \- знаковое умножение целых чисел
.SH SYNOPSIS
.nf
.B #include <libmpu.h>
.PP
.BI "void ismul( mpu_int *" prod ", mpu_int *" num ", mpu_int *" mul ", int " nb_prod ", int " nb_num " );
.fi
.SH DESCRIPTION
Функция \fBismul()\fP выполняет операцию умножения переменной, расположенной
по адресу \fBnum\fP, на переменную, расположенную по адресу \fBmul\fP, с учетом знака переменных.
Результат размещается по адресу \fBprod\fP. Содержимое памяти по адресам \fBnum\fP, \fBmul\fP не
изменяется, предыдущее содержимое памяти по адресу \fBprod\fP теряется. Параметр \fBnb_prod\fP
определяет размер операнда (в байтах), расположенного по адресу \fBprod\fP, а параметр
\fBnb_num\fP \- размер операндов (в байтах), расположенных по адресам \fBnum\fP, \fBmul\fP.
.PP
Функция воздействует на флаги \fBA\fP, \fBC\fP, \fBO\fP, \fBP\fP, \fBS\fP, \fBZ\fP, \fBR\fP.
.PP
Флаг \fBA\fP сбрасывается в 0. Флаг \fBP\fP выставляется только в том случае, когда размер
операнда \fBprod\fP равен одному или двум байтам (\fBnb\fP == 1 || \fBnb\fP == 2).
Флаг \fBR\fP (major || remainder) выставляется в том случае, если полученное произведение
требует большего размера, чем предусмотрено параметром \fBnb_prod\fP.
.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 idiv(3),
.BR isdiv(3),
.BR iatoi(3),
.BR iatoui(3),
.BR iitoa(3),
.BR iuitoa(3).