Беззнаковые данные хранятся в оперативной памяти просто, чтобы узнать какое число хранится в данном байте или в слове необходимо выписать значения всех его битов и считать, что это двоичное представление десятичного числа.
Пример:
7 0
001100102=5010
Следовательно в данном байте хранится число 50
Чтобы записать число 76 в оперативной памяти нужно записать его в двоичном виде и заполнить биты цифрами 7610=10011002
7 0
Числа со знаком представляются сложнее, старший бит выделяется под знак числа и равен 0, если число положительное; и 1 - если число отрицательное, в оставшиеся биты записывается число в двоичном представлении для положительных, и дополнительный код числа для отрицательных чисел.
Правила получения дополнительного кода числа:
1. слева от двоичного числа дописываются нули чтобы число двоичных цифр было 8 для char 16 для int и 32 для long типа.
2. создается обратный код, инверсией всех разрядов числа
3. к полученному обратному коду прибавляется единица
4. отбрасывается самый левый разряд
Пример:
Представить в дополнительном коде число 2210
2210=101102
101102=000101102
000100110®11101001-обратный код
11101001+1=111010102
11010102- искомый дополнительный код числа