Поиск по сайту:

Биты, байты и двоичные данные


Вы когда-нибудь задумывались, что они собой представляют на самом деле — биты, байты и двоичные файлы? Схожие по звучанию, совершенно разные по смыслу, эта статья знакомит вас с компьютерами в их основе: мы опускаемся до физического уровня и многое другое…

Бит и бит!

Компьютеры обрабатывают данные не так, как люди. Но задумывались ли вы когда-нибудь, как на самом деле хранятся эти огромные объемы данных? Добро пожаловать в компьютеры, их ядро: биты. Любая часть информации в большинстве современных вычислительных систем, будь то ваш настольный ПК, мобильный телефон или интеллектуальный экран вашего умного холодильника, хранится с помощью «битов».

Самая детальная часть информации, которую компьютер может «понимать» и обрабатывать, — это бит. Но что такое немного? Как мы можем количественно определить бит? На самом деле это очень просто. Представьте, что у вас есть небольшой кусочек металла (формы, которую можно намагнитить) и магнит. Если вы намагничиваете кусок металла, мы будем называть это состояние намагниченным или 1. Если мы не намагничиваем кусок металла или возвращаем намагниченный кусок металла в размагниченное состояние, мы будем называть такое размагниченное состояние 0.

Это, по сути, и есть бит: намагниченный или размагниченный кусок металла. Таким образом, казалось бы, мы не можем хранить много информации в одном бите: только 0 и 1 — два возможных состояния. Вместо этого возьмем восемь бит и посмотрим, что мы можем с этим сделать.

Байт и байт!

Когда мы объединяем восемь бит вместе, мы формируем байт. Байт — это человеческая концепция, а не та, которую компьютер может понять в своих ядрах. Очень ранние разработчики компьютеров решили создавать байты из 8 бит. Давайте посмотрим, сколько комбинаций мы можем создать, используя восемь битов, установленных в состояние 0 или 1:

0000 0000 = 0
0000 0001 = 1
0000 0010 = 2
0000 0011 = 3
...
0000 1000 = 8
0000 1001 = 9
...
0100 0000 = 64
...
1000 0000 = 128
1000 0001 = 129
1000 0010 = 130
...
1111 1111 = 255

Слева двоичное число, справа десятичное число.

Существует ровно 256 возможных комбинаций (от 0 до 255). Несмотря на то, что у нас есть только восемь маленьких кусочков металла и один магнит, теперь мы можем хранить 255 различных состояний, просто намагничивая или размагничивая любой из восьми кусочков металла. Большой? Возможно, но если учесть, что простой PDF-файл с несколькими отсканированными страницами может легко весить 10 мегабайт (= 10 000 000 байт или 80 000 000 бит), вы можете задаться вопросом, как любой компьютер может обрабатывать 80 миллионов маленьких кусочков металла ;)

Еще более удивительным является то, что многие люди имеют подключение к Интернету со скоростью 50 Мбит/с (мегабит в секунду) или выше. 50 Мбит/с — это 6 250 000 байт в секунду, что, в свою очередь, составляет поразительные 50 000 000 бит в секунду. В этом случае данные не сохраняются на намагниченных кусках металла.

Следующий вопрос, который может прийти на ум, — куда записываются эти биты? Любая форма хранения в вычислительной системе. Например, к основным чипам памяти в вашем компьютере, но также и к физическому диску, например, к старому типу HDD (жесткий диск), в котором буквально вращались намагничиваемые диски, а маленькая головка двигалась вперед и назад. в то время как диски вращались со скоростью 5400, 7000 или 10000 оборотов в минуту и включали или выключали биты намагничивания (1 или 0).

Компьютер также имеет другие места, где он может хранить информацию, например, кэши уровня 1 и уровня 2 (и, где применимо, уровня 3 и т. д.) внутри ЦП (центральный процессор). Итак, каковы некоторые из максимальных скоростей, с которыми компьютеры могут на самом деле намагничивать и размагничивать биты?

Добро пожаловать на самые быстрые диски в мире: быстрый современный NVMe (тип твердотельного накопителя, который, в свою очередь, является преемником жесткого диска) может достигать скорости последовательной записи 7000 МБ/с, что составляет 56 000 000 000 физических магнитных бит записи в секунду. Невероятно, но реально.

Иногда полезно немного вернуться назад в историю и узнать, как все устроено, чтобы оценить то, что было достигнуто, и понять, с какой невероятной скоростью мы прогрессируем. На самом деле это то, что происходит внутри вашего компьютера каждую секунду, и даже быстрее, когда вы обрабатываете интенсивную рабочую нагрузку. Прохладный?

Бинарный!

Теперь, когда мы рассмотрели биты и байты, мы можем сделать небольшой шаг вперед и перейти к двоичному формату. Двоичный термин может использоваться как обозначение двоичного числа (подобно нашему однобайтовому примеру выше, где мы перешли от 0000 0000 (десятичный 0) к 1111 1111 (255 десятичных), либо как поток, какие-то данные или состояние.

Например, мы можем говорить об бинарном потоке данных, когда говорим о нулях и единицах, перемещающихся по компьютерному проводу. В таком случае (двоичный поток данных) состояние битов не намагничивается и не размагничивается, как при хранении на диске или в кэше, а скорее представляет собой живое напряжение (например, +5 Вольт), чтобы указать состояние 1 и ноль вольт, чтобы указать состояние 0.

Мы можем использовать слово двоичный для обозначения данных, хранящихся в двоичном виде (например, на диске) или в виде состояния, например, исполняемый файл на компьютере часто называют двоичным. Будут ли все эти различные варианты использования двоичного кода, потребуется немного времени, чтобы привыкнуть к жаргону.

Подведение итогов

В этой статье мы исследовали мельчайшую динамику того, что происходит в ядре компьютера: простые биты, намагниченные или размагниченные на диске, или напряжение, протекающее по проводу, являются самыми основными единицами вычислений и хранения данных. Затем мы сделали шаг вперед и перешли к байтам и тому, как один байт может содержать значение от 0 до 255, установив или выключив 8 отдельных битов. Наконец-то мы изучили двоичный код и множество способов его использования.

В следующий раз в кафе расскажите своим менее сведущим друзьям историю о битах, байтах и двоичном коде.

Наслаждайтесь!