関数bitrevpair マニュアル

(The documentation of function bitrevpair)

Last Update: 2023/6/27


◆機能・用途(Purpose)

整数のビット反転を計算する。
Compute the bit reversal of an integer.


◆形式(Format)

#include <intmath.h>
inline int bitrevpair(int old,const int order)


◆引数(Arguments)

old ビット反転させる前の整数。
The integer before the bit reversal.
order 整数の2進数表現に用いるビット数。
The number of bits to express the integer as a binary number.


◆戻り値(Return value)

引数oldが表す整数をorder桁の2進数で表現し、 bitの順番を反転させて得られる整数。
An integer obtained by expressing the integer given by argument old as a binary number of order digits and reversing the order of bits.


◆使用例(Example)

int i=bitrevpair(11,5);
int j=bitrevpair(11,4);
int k=bitrevpair(11,3);

1つ目の例では11を5桁の2進数で表すと\(01011_{(2)}\)、 bitの順番を反転させると\(11010_{(2)}=26\)であるので \(i=26\)となる。
The 1st example gives \(i=26\) because the binary expression of 11 with 5-digits is \(01011_{(2)}\) and reversing the order of its bits results in \(11010_{(2)}=26\).

2つ目の例では11を4桁の2進数で表すと\(1011_{(2)}\)、 bitの順番を反転させると\(1101_{(2)}=13\)であるので \(j=13\)となる。
The 2nd example gives \(j=13\) because the binary expression of 11 with 4-digits is \(1011_{(2)}\) and reversing the order of its bits results in \(1101_{(2)}=13\).

3つ目の例では11を3桁の2進数では表現できないのでエラーとなる。
The 3rd example results in an error because 11 cannot be expressed by a binary number of 3-digits.