В каждом электронном устройстве, которым вы пользуетесь есть какой-то вычислительный модуль - то есть процессор. И мы попробуем выяснить , как он работает.
В данном вопросе всё строится по принципу пирамиды, нужно знать азы, чтобы понять всё, что выше. И поэтому нужно немного копнуть «в глубь». Это достаточно сложно, попытаться объяснить за 5 минут то, что в вузе учат полгода, но поверхностно мы всё же попробуем разобраться.
Итак, давайте сначала разберемся как
работает наш компьютер
А он выполняет свои задачи благодаря процессам, которые происходят на разных уровнях абстракции:
Высший уровень — это софт, иными словами программы, с которыми вы работаете. Браузер, в котором производите поиск в интернете, или смотрите различные видео. Всё это работает благодаря операционной системе. Под ней идет архитектура компьютера, потом микроархитектура.
Микроархитектура, в свою очередь базируется на некоторой логике. В свою очередь она построена на цифровых логических элементах. Цифровые логические элементы построены на более простых аналоговых логических элементах.
На аналоговых логических элементах мы остановимся подробнее. Но под ними есть еще два уровня. Это примитивные устройства и физический принцип, на которых они все работают.
Вот настолько все сложно.
И чтобы понять почему у вас получается двигать мышкой и в это же время курсор двигается на экране нужно знать, что происходит на каждом из уровней.
Сейчас будет все более подробно. Постарайтесь вникнуть в данную тему и буквально в каждое слово,
это действительно интересно.
Итак… Это транзисторы…
вы точно слышали такое слово. Раньше вместо них использовали электронные лампы. Они были просто огромны и компьютер мог быть запросто размером с вашу спальню. Транзисторы просто в миллионы раз меньше и на небольшом процессоре их может поместиться миллиарды. И транзисторы, и лампы выполняют одну функцию. Если очень упростить, то транзистор это устройство, которое может делать так, что на выводе либо есть ток, либо его нету. Работает он благодаря физическому принципу. Можно было бы и его рассмотреть, но нет надобности. Транзистор себе работает и все, пусть работает. Зачем усложнять себе жизнь? Это и есть ключевой принцип абстракции. Чтобы получать результат от работы транзистора не нужно знать, как работает все на уровне атомов, электронов и так далее.
Так вот, с эти разобрались. Мы имеем транзистор, который фактически может задавать два состояния. Когда напряжение есть - обозначается это состояние цифрой 1, и когда напряжения нет, это обозначается 0. И тут мы плавно подходим к двоичной системе исчисления. Главный ее принцип в том, что для задания любого числа можно использовать только единицу и ноль?
К примеру, есть какой либо число. Как задать его в двоичной системе используя степени двойки? Нужно просто указать сколько в нем конкретных степеней числа два. Ноль или один. Смотрим чтобы получилось десять нужно взять число 8 - то есть 23, далее если взять 22, которое равно 4 и прибавить, то выйдет двенадцать, а это больше, чем нам нужно, значит 22 брать не нужно и на этом месте у нас нолик. Остались 21 и 20, то есть в целых числах это 2 и двойка в нулевой степени, равна одному. Но они уже нам не нужны, так как из суммы предыдущих степеней число десять уже вышло. Так что пишем нолики. Вот и все. У нас вышло число десять в виде 1010. Так и работает двоичная система. Имея всего два состояния можно задать все что угодно. Собственно, что и делает транзистор.
Теперь что получается, что если транзистор может выдавать два состояния в зависимости от того какой сигнал приходит на его ворота, то комбинацией транзисторов можно задавать разные состояния.
Из транзисторов состоят аналоговые логические элементы. Почему они логические? Потому что они принимают какой-то сигнал и руководствуясь определенной логикой, которая предусмотрена в них определенной комбинацией транзисторов, выдают другой сигнал.
Есть несколько логических элементов. Самый простой это «and» переводится как «и».
Что он делает?
У него есть два входа и один выход. Он сравнивает два значения на входе. Оба из них равны единичке, то выдает 1. В противных случаях он выдает 0. Логику работы можно формализировать в табличке:
Похожий элемент называется «If» «или». Он тоже сравнивает значение. Но уже выдает единичку на выходе если или на первом входе единица, или на втором входе единица, или единица сразу на двух входах:
Кроме вышеупомянутых элементов «If» и «and» есть например «buf» (рипитер). Он просто выдает такой же сигнал, как и получает, так как сингла со временем угасает, а он в свою очередь его продлевает. А есть инвертор. Он работает на уровне инверсии, если получает 1, то выдает 0. А если получает 0, то выдает 1.
Полный список элементов с их табличками выглядит вот так. Они называются табличками «Истинности».
Не забывайте, что эти значения — это просто присутствие или отсутствие тока, а не какой-то высший разум. Все, с этим уровнем мы считай разобрались.
Далее, имея все эти логические элементы можно уже комбинировать их и получать более сложные вещи.
А теперь задумайтесь
Сколько всего происходит внутри логического элемента?
Но нам не нужно это знать, мы можем просто использовать результат его работы. Это своего рода абстракция, нам не нужно вдаваться в подробности его работы внутри, как там бегает каждый «Электроник», какой транзистор открыт, какой закрыт, мы просто имеем результат, то есть абстрагируемся от деталей на низшем уровне.
Надеемся, что данная статься будет полезна для понимания самых начальных принципов работы процессора. Мы задели всего лишь поверхностно эту тему и попытались объяснить её вам. Ведь в наше время кругом присутствуют различные электронные устройства, именующиеся в простонародье - гаджетами.