|
noexcept |
Computes bitwise NOT of an arbitrary-precision integer, then computes bitwise XOR of the result with another arbitrary-precision integer producing the final result written in place of the first integer.
[in,out] | pSrcDest | A pointer to a buffer which on input contains the first arbitrary-precision integer, of size cbSrcDest bytes, which is bitwise complemented and then combined with pSrc2 using bitwise XOR. On output, the buffer receives the final result. |
[in] | pSrc2 | A pointer to the second integer which is combined with the complement of the input integer pointed to by pSrcDest . The size of the integer is also cbSrcDest . The parameter is allowed to point to the same buffer as pSrcDest . Other than that, the buffers may not overlap. To use overlapping buffers use memxornot_LE or memxornot_BE. |
cbSrcDest | A byte size of both of the operands as well as the capacity of the output buffer. |
For the operation it is irrelevant whether bytes of the integers are specified in the Little-Endian or Big-Endian order.
To preserve the values of both operands and copy the result of the operation into a third buffer, use memxornot_copy (faster), memxornot_LE
or memxornot_BE
.
The memxornot_LE and memxornot_BE functions allow variable-sized and possibly overlapping buffers.