Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.0.0 - English

Change language to:
Français - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab Help >> Elementary Functions > Bitwise operations > bitcmp

bitcmp

bitwise complement

Syntax

y = bitcmp(x)
y = bitcmp(x, bitnum)

Parameters

x :

a m-by-n matrix of doubles or a m1-by-m2-by-...-by-mm hypermatrix of doubles or a m-by-n matrix of unsigned integers (uint8, uint16 or uint32). Must contain positive integer values.

bitnum :

a m-by-n matrix of doubles or a m1-by-m2-by-...-by-mm hypermatrix of doubles or a m-by-n matrix of unsigned integers (uint8, uint16 or uint32). The input n must be in the range 1, 2, ..., bitmax where bitmax is the maximum number of bits in x. bitnum must contain positive integer values. The default value for bitnum is bitmax.

y :

a m-by-n matrix of doubles or a m1-by-m2-by-...-by-mm hypermatrix of doubles or a m-by-n matrix of unsigned integers.

Description

Given an unsigned integer x, this function returns the unsigned integer y which is the integer corresponding to the complementary of the binary form of x.

The integer bitnum sets the maximum number of bits.

If the bits number of the x binary representation is less than the bitmax number (8,16 or 32) then the bits '1' are added to the complementary in order to have bitmax number (8, 16 or 32) for the complementary.

If only one input argument is given, x must be a matrix of unsigned integers.

Examples

// 13 is (1101)_2
// We insert zeros in the beginning to get a 8-bit number:
// (00001101)_2
// The 8-bits complement is then (11110010)_2
// which is 242
bitcmp(13,8)
expected = 242

// The input argument can be an unsigned int
bitcmp(uint8(99),8)
expected = 156
Report an issue
<< bitand Bitwise operations bitget >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 14 15:02:42 CET 2017