コンピュータのオペレーティングシステムの深い理解

/ *
* BITAND - X&Yのみ使用して〜と|
*例:BITAND(6、5)= 4
*法務OPSを:〜|
*最大OPS:8
*評価:1
* /
INT BITAND(int型のx、int型のY){
Z =〜(〜X |〜Y)。
Zを返します。
}
/ *
* getByte -ワードから抽出バイトN X
* 0(LSB)3(MSB)から数えバイト
*例:getByte(0x12345678,1)= 0x56
*法的OPS:!〜&^ | + << >>
*最大OPS:6
*評価:2
* /
INT getByte(int型のx、int型のn){
int型Y、Z。
Y = X >>(8 * n)が、
Z = Y&0xffで、
Zを返します。
}
/ *
* logicalShift - Nだけ右にXシフト、論理シフトを使用して
*がとることのできる0 <= N <= 31
*例:logicalShift(0x87654321,4)= 0x08765432
*法務OPS:!〜&^ | + << >>
*最大OPS:20
*評価:3
* /

INT logicalShift(int型のx、int型のn){
int型Y、Z。
Y = X >> N。
Z = Y&(〜(0x1の<< 31)>> N << 1)に
戻り、Z。
}
/ *
* BITCOUNT -戻る単語における1つの数のカウント
*例:BITCOUNT(5)= 2、BITCOUNT(7)= 3
*法的OPSを:!〜&^ | + << >>
*最大OPS:40
*評価:4
* /

おすすめ

転載: www.cnblogs.com/wwqdata/p/11517592.html