Ок. Я не уверен, но обьяснить тебе попытаюсь.
Вспомни, как пишуться числа в нашей родной СС(системе счисления)...
Ах нет, давай лучше приведу сначала пример.
Число 123 в:
DEC(десячичная СС; цифры: 0..9): 1 * 10^2 + 2 * 10^1 + 3 * 10^0 = 100 + 20 + 3 = 123
HEC(двоичная СС; цифры: 0..9, A..F): 0x7B = 0x7 * 16^1 + 0xB * 16^0 = 0x70 + 0xB = 112 + 11
Помни x^0=1!
Здесь
0) "0x" - приставка обозначающая принадлежность числа к 16-й СС.
1) 10 или 16 - базовое число, основания СС
2) Если x^n, то n - разряд, то место где стоит цифра (начиная с 0)
3210 - разряды
1024 - цифры
Для обратного преоброзования умножения нужно заменить делением.
Попробуем число 123 преести из 10-й в 16-ю СС.
123 делим на 16 (базу)
123 div 16 = 7 = 0x7
123 mod 16 = 11 = 0xB
Результат: 7B
(Далее mod - %, а div - /)
Так как 123 div 16 в пределах 0..16, то прекращаем делить.
Ну а если взять число посложнее(больше байта).
260
260 / 16 = 16 = 0x10 (->)
260 % 16 = 4 = 0x4
[0x4]
(->)
16 / 16 = 1
16 % 16 = 0
[0x04]
1
Так как цифра одна, то прибавляем к результату:
[0x104]
В итоге 260=0x104.
P.s. Извините за сложности, просто у меня что-то голова сейчас почему-то болит.