Difference between revisions of "Shl"

From Free Pascal wiki
Jump to navigationJump to search
m (Text replace - "delphi>" to "syntaxhighlight>")
m
Line 1: Line 1:
 +
{{shl}}
 +
<br>
 +
<br>
 
'''Sh'''ift '''l'''eft ('''shl''') performs a left bit-shift operation (opposite than [[Shr|shr]]).
 
'''Sh'''ift '''l'''eft ('''shl''') performs a left bit-shift operation (opposite than [[Shr|shr]]).
  

Revision as of 12:10, 9 July 2013

Template:shl

Shift left (shl) performs a left bit-shift operation (opposite than shr).

E.g

Command is:  00000100  shl 2
 
Action is:  00000100 <- 00
 
Result is:  00010000

Clear a bit

function ClearBit( const aValue, aBitNumber : integer ) : integer;
begin
   result := aValue and not( 1 shl aBitNumber );
end;

If you call ClearBit(%1111,1) then get %1101 (%1111 = 15 and %1101 = 13). If you call ClearBit(13,2) then get 9 (9 = %1001) .

See e.g