Двоичная, десятичная и шестнадцатеричная
Понимание систем счисления
Сравнить системы счисленияКомпьютеры говорят на двоичном языке, люди мыслят в десятичной системе, а программисты часто используют шестнадцатеричную как удобный компромисс. Понимание этих трёх систем счисления является фундаментом вычислительной техники, программирования и цифровой грамотности.
Десятичная система (основание 10)
Система, которую люди используют каждый день.
Как она работает
- 10 символов: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- Каждая позиция — это степень числа 10
- Значения позиций: ...1000, 100, 10, 1
Пример: 3 452
- 3 × 1000 = 3000
- 4 × 100 = 400
- 5 × 10 = 50
- 2 × 1 = 2
- Итого = 3452
Почему основание 10?
Вероятно, из-за счёта на 10 пальцах. Глубоко укоренилась в человеческой культуре и языке.
Двоичная система (основание 2)
Язык компьютеров.
Как она работает
- 2 символа: 0 и 1
- Каждая позиция — это степень числа 2
- Значения позиций: ...128, 64, 32, 16, 8, 4, 2, 1
Пример: 10110101 (двоичное)
| Позиция | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|---|
| Цифра | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
| Значение | 128 | 0 | 32 | 16 | 0 | 4 | 0 | 1 |
Итого = 128 + 32 + 16 + 4 + 1 = 181 (десятичное)
Почему компьютеры используют двоичную систему
- Электронные переключатели имеют два состояния: включено/выключено
- Уровни напряжения: высокий/низкий
- Простые логические схемы
- Устойчивость к ошибкам (чёткое различие между состояниями)
Шестнадцатеричная система (основание 16)
Удобный для человека способ представления двоичных данных.
Как она работает
- 16 символов: 0–9 и A–F
- A=10, B=11, C=12, D=13, E=14, F=15
- Каждая позиция — это степень числа 16
- Значения позиций: ...4096, 256, 16, 1
Пример: 2A9F (шестнадцатеричное)
- 2 × 4096 = 8192
- A (10) × 256 = 2560
- 9 × 16 = 144
- F (15) × 1 = 15
- Итого = 10 911 (десятичное)
Почему шестнадцатеричная?
- Каждая шестнадцатеричная цифра = ровно 4 двоичных разряда
- Гораздо короче двоичной записи (FF вместо 11111111)
- Легко преобразовать в двоичную и обратно
- Широко применяется в программировании, цветах, адресах памяти
Сравнительная таблица
| Десятичное | Двоичное | Шестнадцатеричное |
|---|---|---|
| 0 | 0000 | 0 |
| 1 | 0001 | 1 |
| 5 | 0101 | 5 |
| 10 | 1010 | A |
| 15 | 1111 | F |
| 16 | 10000 | 10 |
| 100 | 1100100 | 64 |
| 255 | 11111111 | FF |
| 256 | 100000000 | 100 |
| 1000 | 1111101000 | 3E8 |
Когда используется каждая система
Десятичная
- Повседневный счёт и арифметика
- Финансовые расчёты
- Пользовательские интерфейсы (то, что видят люди)
Двоичная
- Аппаратные операции компьютера
- Сетевые адреса (IPv4, маски подсети)
- Побитовые операции в программировании
- Понимание основ вычислительной техники
Шестнадцатеричная
- Цветовые коды (веб-дизайн): #FF5733
- Адреса памяти при отладке
- MAC-адреса: 00:1A:2B:3C:4D:5E
- Кодировки символов (Unicode)
- Криптография и хеши
Соглашения по записи
Как определить, в какой системе счисления записано число:
Префиксы
- 0b или 0B: двоичное (0b1010)
- 0x или 0X: шестнадцатеричное (0xFF)
- 0o или 0: восьмеричное (0o17 или 017)
- Без префикса: обычно десятичное
Суффиксы
- ₂: двоичное (1010₂)
- ₁₀: десятичное (10₁₀)
- ₁₆ или h: шестнадцатеричное (FFh или FF₁₆)
Полезные значения для запоминания
| Понятие | Десятичное | Двоичное | HEX |
|---|---|---|---|
| Один байт (макс.) | 255 | 11111111 | FF |
| Один байт + 1 | 256 | 100000000 | 100 |
| Два байта (макс.) | 65 535 | 16 единиц | FFFF |
| Степени двойки | 1,2,4,8,16,32,64,128,256,512,1024 | 1,10,100... | 1,2,4,8,10,20,40,80,100... |
Заключение
Понимание двоичной, десятичной и шестнадцатеричной систем счисления необходимо каждому, кто работает с компьютерами. Десятичная система естественна для людей, двоичная — для компьютеров, а шестнадцатеричная служит мостом между ними, делая двоичные данные читаемыми и при этом компактными. Ключевая идея в том, что это просто разные способы представления одних и тех же значений, каждый со своими преимуществами: десятичная — для человеческих вычислений, двоичная — для аппаратной эффективности, шестнадцатеричная — для удобства программистов.