Почему 0 и 1 в компьютере

Обновлено: 07.07.2024

Ну типа жил был транзистор значит. И он был такой весь из себя крайне радикальный - не было у него по жизни других настроений, кроме двух - либо он говорил всем "да" и пропускал через себя всё, что в одно ухо (левая дырка) влетело, то из другого (правая дырка) сразу вылетало. Либо же настроение его могло поменяться, тогда он становился крайне негативным и переставал пропускать себя любую информацию - замыкался в себе, думал о главном.
А настроение его зависело от того, насколько хорошо он питался. Суёшь ты ему в рот (третья дырка) нормальное питание - он добрый, на всё согласен, информацию через себя пропускает. Чуть только начинаешь его кормить меньше, чем он хочет (есть у него определённый уровен неообходимого питания) - он тут же отключался от мира и ни на что не реагировал, пока снова не пихнёшь ему в рот достаточноого питания. Так и получилось, что аналоговый уровень питания, то есть количество еды, которое ты ему кладёшь в рот, в итоге превращается в бинарное значение - 0 или 1 на правом ухе.

И вот если найти нашему транзистору таких же друзей и объединить их - то можно получить цифровую схему. В которой в зависимости от поданного питания на разные рты и левые ухи мы будем получать разные комбинации питания на правых ухах. Чаще всего транзисторы соединяют довольно странным образом - правое ухо одного ко рту другого, чтобы первый контроллировал настроение второго. И т.д. Чем больше транзисторов - тем сложнее можно придумать алгоритм, который эта схема будет реализовывать.

И вот в современных процессорах миллионы этих транзисторов (если быть точнее, то на текущий момент около 1,400,000,000) спаяны вместе. чтобы распознавать входные команды и выдавать результат по заданной схеме.

Ты спросишь, мой маленький друг, как же розетка соединяется с процессором? Как эти 220В превращаются в 0 и 1 на моём мониторе?. А всё дело в том, что блок питания преобразует переменный ток в постоянный, который потом подаётся на процессор. Блок питания совсем не мудрёный - пара диодов и трансформатор, можешь даже собрать его сам дома из говна и палок. А интересное дальше.

Но если подать ток на схему из транзисторов - то они застынут в одном положении, заданном схемой, и ничего происходить не будет? Да, ты прав, чтобы компьютер считал, необходимо менять ток на его входных ножках, тем самым отдавая ему разные команды. Но тут возникает проблема синхронизации - поменять напряжение одномоментно невозможно (физика, типа, химия там, электроны бегают, заряд меняется, дырки должны образоваться успеть) - нужно определённое время. Поэтому придумали "частоту".

Рядом с транзисторами сидит важный кристалик, который генерирует ток по синусоиде с равномерной частотой. Эта синусоида немного рихтуется, превращаясь в бесконечный поток "есть питание" и "нет питания" меняющийся с одинаковой частотой. На графике это выглядит как пила, примерно. И вот все договорились, что будут засекать момент, в котором "всё готово", все транзисторы заняли своё положение и всё устаканилось и наконец можно считать выходной результат, например, на верхушке зубчика пилы, то есть когда генератор частоты дал 1. И вот совремменные процессоры делают это с частотой 2 гигагерца, то есть 2 миллиарда раз в секунду все транзисторы в процессоре меняют своё состояние.

Есть очень простое объяснение, с которого хорошо начинать.
0 и 1 - это "выкл"/""вкл", "тока нет" / "ток есть".
Все логические схемы основаны на этом принципе. Включено/выключено, открыто/закрыто, высокий/низкий, истина/ложь, да/нет, больше/меньше.

Отсюда и бинарная логика, см. алгебра Буля.

А технически это реализуется логическими схемами.

Ну типа жил был транзистор значит. И он был такой весь из себя крайне радикальный - не было у него по жизни других настроений, кроме двух - либо он говорил всем "да" и пропускал через себя всё, что в одно ухо (левая дырка) влетело, то из другого (правая дырка) сразу вылетало. Либо же настроение его могло поменяться, тогда он становился крайне негативным и переставал пропускать себя любую информацию - замыкался в себе, думал о главном.
А настроение его зависело от того, насколько хорошо он питался. Суёшь ты ему в рот (третья дырка) нормальное питание - он добрый, на всё согласен, информацию через себя пропускает. Чуть только начинаешь его кормить меньше, чем он хочет (есть у него определённый уровен неообходимого питания) - он тут же отключался от мира и ни на что не реагировал, пока снова не пихнёшь ему в рот достаточноого питания. Так и получилось, что аналоговый уровень питания, то есть количество еды, которое ты ему кладёшь в рот, в итоге превращается в бинарное значение - 0 или 1 на правом ухе.

И вот если найти нашему транзистору таких же друзей и объединить их - то можно получить цифровую схему. В которой в зависимости от поданного питания на разные рты и левые ухи мы будем получать разные комбинации питания на правых ухах. Чаще всего транзисторы соединяют довольно странным образом - правое ухо одного ко рту другого, чтобы первый контроллировал настроение второго. И т.д. Чем больше транзисторов - тем сложнее можно придумать алгоритм, который эта схема будет реализовывать.

И вот в современных процессорах миллионы этих транзисторов (если быть точнее, то на текущий момент около 1,400,000,000) спаяны вместе. чтобы распознавать входные команды и выдавать результат по заданной схеме.

Ты спросишь, мой маленький друг, как же розетка соединяется с процессором? Как эти 220В превращаются в 0 и 1 на моём мониторе?. А всё дело в том, что блок питания преобразует переменный ток в постоянный, который потом подаётся на процессор. Блок питания совсем не мудрёный - пара диодов и трансформатор, можешь даже собрать его сам дома из говна и палок. А интересное дальше.
Но если подать ток на схему из транзисторов - то они застынут в одном положении, заданном схемой, и ничего происходить не будет? Да, ты прав, чтобы компьютер считал, необходимо менять ток на его входных ножках, тем самым отдавая ему разные команды. Но тут возникает проблема синхронизации - поменять напряжение одномоментно невозможно (физика, типа, химия там, электроны бегают, заряд меняется, дырки должны образоваться успеть) - нужно определённое время. Поэтому придумали "частоту". Рядом с транзисторами сидит важный кристалик, который генерирует ток по синусоиде с равномерной частотой. Эта синусоида немного рихтуется, превращаясь в бесконечный поток "есть питание" и "нет питания" меняющийся с одинаковой частотой. На графике это выглядит как пила, примерно. И вот все договорились, что будут засекать момент, в котором "всё готово", все транзисторы заняли своё положение и всё устаканилось и наконец можно считать выходной результат, например, на верхушке зубчика пилы, то есть когда генератор частоты дал 1. И вот совремменные процессоры делают это с частотой 2 гигагерца, то есть 2 миллиарда раз в секунду все транзисторы в процессоре меняют своё состояние.

Двоичная система счисления (0 и 1) часто ассоциируется с компьютерами. Но почему это так? Почему компьютеры не могут просто использовать базу 10 вместо преобразования в двоичный файл и обратно? Разве не эффективнее использовать более высокую базу, поскольку двоичное представление (база 2) использует больше "пробелов"? Ответ довольно прост.

Что такое "цифровой"?

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

Термин "двоичный" подразумевает "два". Таким образом, двоичная система счисления – это система чисел, основанная на двух возможных цифрах - 0 и 1. Каждая двоичная цифра, или "бит", представляет собой 0 или 1, который непосредственно соответствует одному "переключателю" в цепи. Добавьте достаточно этих "переключателей" вместе, и вы можете представить больше чисел. Таким образом, вместо 1 цифры, вы в конечном итоге с 8, чтобы сделать байт. (Байт-основная единица хранения, просто определяется как 8 бит; известные килобайты, мегабайты и гигабайты являются производными от байта, и каждый из них в 1,024 раза больше другого. Существует 1024-кратная разница в отличие от 1000-кратной разницы, потому что 1024 - это степень 2, а 1000 - нет.)

Двоичный использует больше памяти, чем десятичный?

На первый взгляд кажется, что двоичное представление числа 10010110 занимает больше места, чем его десятичное (основание 10) представление 150. В конце концов, первое - это 8 цифр, а второе - 3 цифры. Однако это недопустимый аргумент в контексте отображения чисел на экране, так как все они хранятся в двоичном формате! Единственная причина, по которой 150 "меньше", чем 10010110, заключается в том, как мы пишем его на экране (или на бумаге).

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

А как насчет восьмеричного и шестнадцатеричного?

Восьмеричное (основание 8) и шестнадцатеричное (основание 16) - это просто "ярлык" для представления двоичных чисел, поскольку оба эти основания являются степенями 2. 3 восьмеричные цифры = 2 шестнадцатеричные цифры = 8 двоичных цифр = 1 байт. Программисту проще представить 32-разрядное целое число, часто используемое для 32-разрядных значений цвета, как FF00EE99 вместо 11111111000000001110111010011001.

Недвоичные компьютеры

Представьте себе компьютер, основанный на базе 10. Тогда каждый "переключатель" будет иметь 10 возможных состояний. Они могут быть представлены цифрами (известными как "запреты" или "dits", что означает "десятичные цифры") от 0 до 9. В этой системе числа будут представлены в базе 10. Это невозможно с обычными электронными компонентами сегодня, но теоретически возможно на квантовом уровне.

Является ли эта система более эффективной? Предполагая, что "переключатели" стандартного двоичного компьютера занимают то же самое количество физического пространства (нанометров), что и эти переключатели base-10, компьютер base-10 мог бы вместить значительно больше вычислительной мощности в то же самое физическое пространство. Таким образом, хотя вопрос о том, что двоичный код "неэффективен", имеет некоторую обоснованность в теории, но не в практическом использовании сегодня.

Тогда почему все современные компьютеры используют двоичный код?

Простой ответ: компьютеры изначально не были предназначены для использования двоичных файлов. скорее, binary была определена как наиболее практичная система для использования с компьютерами, которые мы проектировали.

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



Всех нас интересует какая скорость передачи данных в сети (в Интернет тоже), скорость записи на жесткий диск или флешку. Давайте попробуем разобраться, что же такое - биты и байты. Бит - это самая наименьшая единица измерения количества информации. Наравне с битом активно используется байт. Байт равен 8 бит.

Говоря проще, скорость подключения это количество получаемой или отправляемой вашим компьютером информации в единицу времени.

В качестве единицы времени в данном случае принято считать секунду, а в качестве количества информации - кило или мегабит . Например, если ваша скорость 128 Kbps - это означает, что ваше соединение имеет пропускную способность 128 килобит в секунду
">
или же 16 килобайт в секунду.

Единицы измерения информации:


(1 Байт = 8 бит).


Двоичная система счисления

Да еще производители внесли свой вклад в запутывание ситуации (одни считали 2х10 ,

другие 10х3 ).

Короче в итоге, чтобы окончательно убрать несоответствие, изменили не только названия,

но и приставки:


Но как Вы понимаете от этого опять же легче не стало.

В итоге на сегодняшний день имеются три варианта использования двоичных приставок.


Двоичные приставки в ОС Windows и производителей ОЗУ

1Кбайт (КБ или KB или Kbyte) = 1024байт

1Мбайт (МБ или MB или Mbyte) =1024Кбайт

1Гбайт (ГБ или MB или Gbyte) =1024Мбайт

1Тбайт (ТБ или TB или Tbyte) =1024Гбайт


Производители оперативной памяти используют тот же принцип.

Двоичные приставки в ОС Windows и у производителей ОЗУ 1 Кбайт (КБ или KB или

Kbyte) = 1024 байт

Использование десятичных приставок

Производители накопителей (жестких дисков (HDD), карт флэш - памяти, а также DVD и

BD - дисков) используют десятичные приставки. Эти же приставки используются при обозначении скорости передачи данных (100 Мбит/с =100 000 000 бит/с.

Десятичный приставки используют производители накопителей

(флешки, жесткие диски, DVD - диски)


1 килобайт (кБ или kB или kbyte) =1000 байт

1 мегабайт (МБ или MB или Mbyte)=1000килобайт=1 000 000байт

1гигабайт (ГБ или GB или Gbyte) =1000мегабайт=1 000 000Кбайт=1 000 000 000байт

1терабайт (ТБ или TB или Tbyte) =1000гигабайт=1 000 000Мегабайт=1 000 000 000Кбайт=1 000 000 000 000байт

Многих начинающих юзеров вводит в ступор после установки ОС, что диск обьемом 1000гб, отображается, как 931гб.

Как Windows видит два жестких диска 1ТБ и 500ГБ

Производители считают, что в нем 1 000 000 000 килобайт, а ОС Windows делит на 1024 и получает 976 562 500 Кбайт ( кибибайт) или 931 Гбайт (гибибайт ).

Жесткий диск 500 ГБ отображается как 465.76 ГБ, а винчестер объемом 1000 ГБ

содержит всего 931.51 гигабайт, т. е .70 гигов никуда не делись, просто гиг и байт на жестком диске меньше, чем гиг а байт.

1КБ=1 кибибайт= 1024байт

1килобайт=1000байт


Теперь Вы знаете сколько байт в килобайте, а сколько в кибибайте

(бит в килобите и в кибибите)

В заключение, если у Вас на флешке вместо 16GB - 14.9GB, то 1.1 ГБ ''потерялся'' при пересчете в киб и байты.

Читайте также: