Delphi函数Shl与Shr介绍说明

格式:操作数 Shl/Shr 移动位数
说明:操作数与返回值都是整数
例子:

  16(10) = 10000(2)
     16(10) Shr 1 = 10000(2) Shr 1 = 1000(2) = 8(10)
     16(10) Shr 2 = 10000(2) Shr 2 = 100(2) = 4(10)


说明:

  一个整数(I)按位左移一位,相当于把它乘以2,即 I * 2
     一个整数(I)按位右移一位,相当于把它除以2,即 I Div 2
     一个整数(I)按位左移2 位,相当于把它乘以2再乘2,即 (I * 2) * 2
     一个整数(I)按位右移2 位,相当于把它除以2再除2,即 (I Div 2) Div 2


分析:

  引用我们最常用的十进制来说明,假如有一个数16,在十进制中住右移一位,结果剩1,左移一位即是160,相当于16 Div 10 和 16 * 10;
     同理,在二进制中整除和乘的是2。
     得到如下:结果只是操作数与进制数之间的操作了。

转载于:https://www.cnblogs.com/rogee/archive/2010/09/15/1827275.html

你可能感兴趣的:(Delphi函数Shl与Shr介绍说明)