Справочник функций и процедур Delphi: Shl

  Навигация по первой букве:

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

Shl
Ключевое слово
Сдвигает значение целого числа влево на указанное число бит unit
  Number Shl bits

Delphi Sources

Описание
Ключевое слово Shl выполняет поразрядный сдвиг влево целого числа. Число сдвигается на Bits бит влево.

Например:
var
  myByte : Byte;
begin
  myByte := $2F;    // $2F = 47 decimal
  myByte := myByte Shl $24;
end;


Дает тот же самый результат, что и Shl 4 = $F0.
Примечания
Предупреждение - используйте Shl только когда требуется побитовая операция - не используйте вместо умножения или деления. Во-первых, потому что это неизвестно, что случается. Во-вторых, биты могут быть потеряны в операции.
Похожие команды
Hi  Возвращает байт старшего разряда от типа Integer.

Lo  Возвращает младший байт целого числа (2-байтового)

Shr  Сдвигает значение целого числа вправо на указанное число бит

 
Пример кода : Смещение влево и теряя старшие разряды перед смещением назад
var
  before, after : Word;
begin
  // Установка начального числа
  before := $3C;      // Hex 3C = 003C в Word

  // Сдвиг влево на 12 потеряет верхние 12 бит Word
  after := before Shl 12;

  ShowMessageFmt('До : %x',[before]);
  ShowMessageFmt('После смещения влево: %x',[after]);

  // Смещение вправо на 12 не возвратит потерянные данные
  after := after Shr 12;

  ShowMessageFmt('После смещения вправо : %x',[after]);
end;
До : 3C
После смещения влево : C000
После смещения вправо : C
 


Последние добавленные на сайт исходники

DeLiKaTeS Tetris (Тетрис)

TDictionary Custom Sort

Fast Watermark Sources

3D Designer

Sik Screen Capture

Patch Maker

 

Айболит (remote control)

ListBox Drag & Drop

Доска для игры Реверси

Графические эффекты

Рисование по маске

Перетаскивание изображений

 

Copyright © 2004-2024 "Delphi Sources" by BrokenByte Software (источник – "DelphiBasics")

Группа ВКонтакте