Двоичная математика для начинающих
В обычной жизни мы привыкли к десятичной системе — у нас есть десять цифр от 0 до 9. Если мы складываем 5 и 6, то получаем 11: места для одной цифры в ответе уже не хватает, и мы переносим единицу в следующий разряд (в десятки).
Компьютер делает абсолютно то же самое, только у него всего две цифры: 0 и 1. Сложение в двоичной системе выглядит очень просто:
• 0 + 0 = 0
• 1 + 0 = 1
А вот 1 + 1 равно 2, но цифры «2» у компьютера нет! Поэтому происходит переполнение разряда: двойка записывается как 10. Компьютер пишет 0 в текущий разряд, а единицу переносит в следующий — прямо как мы переносим десятки при сложении в столбик. Понимание этого простого принципа переполнения — ключ к тому, чтобы научить кремниевые микросхемы считать по-настоящему.
Практический пример. Сложим 3 и 5 в двоичной системе. Число 3 — это 0011, число 5 — 0101. Складываем поразрядно справа налево: 1+1=0 и 1 в уме; 1+0+1(из ума)=0 и 1 в уме; 0+1+1(из ума)=0 и 1 в уме; 0+0+1(из ума)=1. Ответ: 1000 — это 8. Ровно так же работает каскад сумматоров в процессоре: каждый бит складывается отдельно, а перенос передаётся соседу слева, как в школьном столбике.