Difference between revisions of "Shl/fi"

From Free Pascal wiki
Jump to navigationJump to search
(Created page with "{{shl}} <br> <br> == Bittien siirto vasemmalle (SHL) == '''Sh'''ift '''l'''eft ('''shl''') tekee bittien siirto operaation vasemmalle, Siirrettävä bittien määrä kerrotaa...")
 
Line 4: Line 4:
 
== Bittien siirto vasemmalle (SHL) ==
 
== Bittien siirto vasemmalle (SHL) ==
  
'''Sh'''ift '''l'''eft ('''shl''') tekee bittien siirto operaation vasemmalle, Siirrettävä bittien määrä kerrotaan parametrinä.
+
'''Sh'''ift '''l'''eft ('''shl''') tekee bittien siirto operaation vasemmalle, Siirrettävä bittien määrä kerrotaan käskyn oikealla puolen.
 
Päinvastainen toiminta on bittien siirto oikealle ([[Shr]]).
 
Päinvastainen toiminta on bittien siirto oikealle ([[Shr]]).
  

Revision as of 20:03, 21 February 2015

Template:shl

Bittien siirto vasemmalle (SHL)

Shift left (shl) tekee bittien siirto operaation vasemmalle, Siirrettävä bittien määrä kerrotaan käskyn oikealla puolen. Päinvastainen toiminta on bittien siirto oikealle (Shr).

Esim.

komento: 00000100 shl 2 (siirrä kaksi bittiä vasemmalle)
 
toiminta:  00000100 <- 00 (Lisätään kaksi nollaa arvon oikealle puolelle; kaksi vasemmanpuoleista merkkiä katooa)
 
tulos on:  00010000

Nollaa bitti

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

Jos kutsut ClearBit(%1111,1), niin saat %1101 (Binäärinen %1111 on desimaalijärjestelmässä 15 ja vastaavasti kaksijärjestelmän %1101 on desimaalijärjestelmän 13).

Jos kutsut ClearBit(13,2), niin saat 9 (9 = %1001) .

Katso myös