.\" Copyright 2026 Andrew V.Kosteltsev (kx@radix-linux.su) .\" .\" .TH ibits_len 3 "September 14, 2026" "libmpu" "LibMPU Programmer's Manual" .SH NAME \fBibits_len\fP \- длина беззнакового целого числа в значащих битах .SH SYNOPSIS .nf .B #include .PP .BI "int ibits_len( mpu_int *" a ", int " nb " );" .fi .SH DESCRIPTION Функция \fBibits_len()\fP возвращает количество значащих битов, необходимых для представления беззнакового целого числа, расположенного по адресу \fBa\fP. Для ненулевого значения это номер старшего установленного бита, если младший бит считать первым. Для нулевого значения функция возвращает 0. .PP Содержимое памяти по адресу \fBa\fP не изменяется. Параметр \fBnb\fP определяет размер операнда в байтах и должен соответствовать одному из размеров целых чисел, определённых в \fBlibmpu.h\fP (например, \fBNB_I8\fP, \fBNB_I16\fP, ..., \fBNB_I65536\fP). .PP Функция не изменяет флаги целочисленных операций. .sp .SH EXAMPLES .nf .sp #include #include int main( void ) { mpu_int1024_t a; int nb = NB_I1024; __mpu_init(); iatoui( a, "89000000000000", nb ); printf( "nbits = %d;\\n", ibits_len( a, nb ) ); /* nbits = 47; */ __mpu_free_context(); return( 0 ); } .fi .sp .SH SEE ALSO .BR _int_digs(3), .BR libmpu(7).