清华大学出版社 TSINGHUA UNIVERSITY PRESS ·可以任意指定从右面第m位开始取其右面n位。只 需将程序中的“b=a>>4”改成“b=a>>(m-n+1)” 以及将“c=(~0<<4)”改成“c=~(0<<n)” 即可。 ·例12.2循环移位。要求将a进行右循环移位。见图 12.4。图12.4表示将a右循环移n位。即将a中原来 左面(16-n)位右移n位,原来右端n位移到最左面n 位。今假设用两个字节存放一个整数。为实现以 上目的可以用以下步骤: ①将a的右端n位先放到b中的高n位中。可以用下 面语句实现:b=a<<(16-n): • 可以任意指定从右面第m位开始取其右面n位。只 需将程序中的“b=a>>4”改成“b=a>>(m-n+1)” 以及将“c=~(~0<<4)”改成“c=~(~0<<n)” 即可。 • 例12.2循环移位。要求将a进行右循环移位。见图 12.4。图12.4表示将a右循环移n位。即将a中原来 左面(16-n)位右移n位,原来右端n位移到最左面n 位。今假设用两个字节存放一个整数。为实现以 上目的可以用以下步骤: • ① 将a的右端n位先放到b中的高n位中。可以用下 面语句实现:b=a<<(16-n);