Теория
Для начала разоберёмся с
шестнадцатеричной системой счисления.
Ничего сложного в ней нет. Мы используем
в жизни десятичную систему. Поэтому
объяснения начну с аналогий:
В десятеричной системе мы используем
десять цифр - от 0 до 9 => в
шестнадцатеричной цифр должно быть 16. С
первой десяткой вроде ясно (те же
арабские цифры от 0..9), а как быть с
остальными?? Этот вопрос решили просто -
взяли первые шесь букв латинского
алфавита. Таким образом получается
такой набор цифр:
0 1 2 3 4 5 6 7 8 9 A B C D E F
В дальнейшем, для предотвращения
путаницы шестнадцатеричные числа я буду
писать, ставя на конце букву h или H (например
12A4Dh ) H - это сокращение от англ. hexadecimal (шестнадцатеричное).
Для краткости его иногда называют
просто Hex. Вообщем-то h пришло из языка
Ассемблера.
Важно сразу же понять, что десятичные и
шестнадцатеричные числа равны только
в промежутке от 0..9, т.е. 10 = Аh, 11 = Bh .... 15 = Fh,
а 11 не равно 11h.
Преобразование из шеснадцатеричной (HEX)
в десятичную (DEC).
Для первода числа в Dec необходимо
последовательно начиная с самой левой
цифры умножать на 16 и складывать со
следующей цифрой. Так как операции
выполняются в 10-ом формате, то
необходимо цифры A..F преобразовать в 11..15
:) Пример преобразования числа A7B8h: