C# byte的循环移位

byte a = 69;//要移位的数字
byte n = 1;//移位的数量
byte typeLength = 8;//类型的长度,1byte=8bit
ushort b = a;//当做缓存用的更大的类型
b += (ushort)(b << typeLength);

//循环左移
int result = (byte)(b >> (typeLength - (n % typeLength)));
System.Console.Out.WriteLine(result);
//循环右移
result = (byte)(b >> (n % typeLength));
System.Console.Out.WriteLine(result);

posted on 2012-04-26 21:12  wchao911  阅读(2054)  评论(0编辑  收藏  举报

导航