12. Битовая арифметика

   Битовая или поразрядная арифметика  введена  в  TURBO  PASCAL  для

обеспечения возможности работы с двоичными разрядами (битами). Опера-

ции битовой арифметики применимы только к целым типам.

   Первая группа операций - логические операции not, and, or и xor.

   Операция not является одноместной,  она изменяет каждый бит целого

числа на обратный.

   Операции and, or и xor - двуместные, операнды этих операций - целые

величины одинаковой   длины.   Операции выполняются попарно над всеми

двоичными разрядами операндов.

   Вторая группа  операций  -  это операции сдвига влево shl и сдвига

вправо shr:

   

    I shl N

    I shr N.

  

   Эти операции сдвигают двоичную последовательность значения I влево

или вправо на N двоичных разрядов. При этом биты, уходящие за пределы

разрядной сетки, теряются, а освободившиеся двоичные разряды заполня-

ются нулями.  При сдвиге вправо отрицательных значений освободившиеся

разряды заполняются единицами.