TwiddleLab / Код / Как компьютер хранит всё
Байты и переполнение
Что ты узнаешь
- Байт это 8 бит. Он вмещает 2⁸ = 256 значений: от 0 до 255.
- n бит вмещают 2ⁿ значений. Каждый лишний бит их удваивает.
- Двоичное сложение: 1 + 1 = 10, значит, пиши 0 и переноси 1.
- Переполнение: когда ответу нужно больше бит, чем есть в коробке, верхний перенос теряется, и число возвращается к 0.
Как идёт урок
Pac-Man ломается на уровне 256. Почему ровно 256?
Игра хранит уровень в 8 выключателях. Ставка: какое самое большое число могут показать 8 выключателей?
Счётчик уровней на 250. Добавляй по 1.
Жми +1 или «Запуск» и смотри, что будет, когда загорятся все лампы.
В онлайн-игре 1000 игроков. Каждому нужен свой номер.
Какого наименьшего числа выключателей хватит? Двигай ползунок, пока полоска не дойдёт до линии.
Байты и переполнение.
Байт это 8 бит. Он вмещает 2⁸ = 256 разных значений, от 0 до 255. Размеры файлов считают в байтах.
n бит вмещают 2ⁿ значений. Ещё один бит их удваивает: 8 бит 256, 10 бит 1024, 16 бит 65 536.
Переполнение бывает, когда ответу нужно больше бит, чем есть в коробке. Верхний перенос теряется, и число начинается заново, как счётчик пробега, который переходит с 999999 на 000000.
Сложи в двоичном виде: 0101 + 0011.
Заполняй ответ справа, по одному столбику.
Запиши свой рекорд в один байт.
Любое число от 100 до 255. Оно появится в следующей игре.
Ставки на счётчик: предскажи байт после сложения.
Задай нижние выключатели, потом нажми «Сложить». Собери серию.
Чтобы ИИ-модель поместилась в телефон, каждое её число сжимают в 8 бит. Сколько разных значений может принимать каждое?
Этот трюк называется квантованием. Он делает модели примерно в 4 раза меньше.
Эта машина сложила 200 + 100 и получила 44. Исправь её.
Найди, что потерялось, потом дай этому место.
Скоростной раунд: какие числа помещаются в один байт?
Перетащи каждое число в его банку.
Предыдущий урок: Переключатели считают · Следующий урок: Буквы это числа · Часть курса: Как компьютер хранит всё
Уроки интерактивные и работают на JavaScript. Включи его, чтобы играть.