Как включить GPS на Android

Чтобы понять, как это работает, нам нужно знать, что компьютеры работают в битах.

132 в base 10 (десятичный) является 10000100 в базе 2 (двоичный). Поскольку Java хранит int в 32 битах, мы имеем

00000000_00000000_00000000_10000100

Когда int преобразуется в byte, Java прерывает левый почти 24 бит. Мы получаем 10000100.

В дополнение двух в качестве знака используется самый левый бит. Если самый левый бит 0, ничего больше не будет сделано.

Если самый левый бит - 1 (как здесь, здесь), это означает, что число отрицательно и требуется больше работы. Чтобы получить величину, мы минус один, затем применим одно дополнение (применяем одно дополнение, чтобы инвертировать биты):

  1. 10000100 - 1 = 10000011
  2. Инверсия 10000011 = 01111100

01111100 при интерпретации десятичного числа равна 124.

Итак, мы имеем отрицательный число с величиной 124, что дает нам -124.

13
задан lucian.pantelimon 29 March 2012 в 21:06
поделиться