shl 怎么用? ( 积分: 100 )

  • 主题发起人 主题发起人 let_it_be
  • 开始时间 开始时间
L

let_it_be

Unregistered / Unconfirmed
GUEST, unregistred user!
var
x, y, xP, yP: Integer;
yP2, xP2: Integer;
begin
xP2 := ((Width - 1) shl 15) div Dst.Width
// 缩放比例
yP2 := ((Height - 1) shl 15) div Dst.Height;

不理解shl 怎么用的.
 
var
x, y, xP, yP: Integer;
yP2, xP2: Integer;
begin
xP2 := ((Width - 1) shl 15) div Dst.Width
// 缩放比例
yP2 := ((Height - 1) shl 15) div Dst.Height;

不理解shl 怎么用的.
 
shl 15 左移15位,即 乘以2的15次方
 
位运算符.逻辑左移位,(Width - 1) shl 15即对Width - 1的结果左移位15位,(Height - 1) shl 15对Height - 1的结果左移位15位.
如果要了解更多,请详见汇编语言
 
正如xianguo所言,逻辑左移一位相当于对这个数乘以2,左移15位就相当于乘以2的15次方
 
楼上各位解释的很清楚了,遇到问题,我一般都是看帮助,看例子
 
后退
顶部