Ответы к посту
Что есть биты и байты
1

Ответ на пост «Что есть биты и байты»

Перед вами наглядный пример, почему нужно читать толстые книжки, а не веселые ютуб ролики смотреть и иже с ними.

Ведь только из скучных толстых книжек вы узнаете, что байт это минимальная количество адресуемой памяти* и поэтому вам не придется думать почему же в том же с++ или в c# или в с тип данных byte есть, а тип данных bit нет, хотя казалась бы, какая разница?

* это не очень точно определения, но пойдет

Что есть биты и байты

Представьте, что у нас есть красные и зелёные яблоки. Сколько различных последовательностей из трёх яблок можно составить? Ответ — 8. Это считается по формуле nᵏ, где n — количество вариантов (красное или зелёное, то есть 2), а k — длина последовательности. В итоге: 2³ = 8.

Например:

🍏🍏🍏

🍏🍏🍎

🍏🍎🍎

... и так далее.

В комбинаторике это называется размещение с повторениями.

Тоже самое с битом.

Бит — минимальная единица информации, он может принимать только два значения: 0 или 1, как наши яблоки. Следовательно, количество различных последовательностей из k бит равно 2ᵏ.

Байт — это 8 бит, а значит, он может хранить 2⁸ = 256 различных значений. Например:

01111011 = 123 (в десятичной системе)

11111111 = 255

Если нам нужно число больше 255, потребуется уже два байта.

Это же используется в кодировках.

Например в Windows-1251 каждому символу соответствует число от 0 до 255. Если вы когда-нибудь открывали в Блокноте "непонятный" файл и видели кракозябры — это потому, что программа просто читает каждый байт и подставляет к нему символ из своей кодировки.

Цвета в формате RGB тоже используют байты. Каждый пиксель — это три байта:

  • R (Red) = 144 (10010000)

  • G (Green) = 178 (10110010)

  • B (Blue) = 221 (11011101)

Объединяя их, получаем 10010000 10110010 11011101, что в шестнадцатеричной системе записывается как 90b2dd. Вот наглядный пример. На странице вы увидите цвет который соответствует коду 90b2dd и его разбивку по уровням RGB соответствующую числам из примера выше.

Интересный факт: байт не всегда был 8-битным. В ранних ЭВМ встречались байты размером 6, 7, 9, 32, а иногда даже 48 бит. Только в 70-х годах стандартом стали 8 бит.


Я завел телеграмм канал где рассказываю про программирование и IT и стараюсь делать это простым языком. Подпишитесь - ExceptionEx

Показать полностью
Отличная работа, все прочитано!