Основно съдържание
Компютрите и интернет
Курс: Компютрите и интернет > Раздел 2
Урок 3: Логически елементи и схемиЛогически елементи
Компютрите обменят информация, като използват проводници, чието състояние означава единици и нули. Нужно е тези стойности да бъдат обработвани по някакъв начин, за да може компютрите да извършват по-сложни операции като изчисляването на 50-ата цифра на pi.
Компютрите използват логически елементи, които трансформират нулите и единиците. Логическият елемент приема данни от входящите проводници и предава резултата на изходящия проводник.
NOT елемент
Най-простият елемент е NOT елементът, известен още като инвертор. Той приема една входяща стойност и връща обратната на нея.
Ако на входа имаме 0, на изхода ще получим 1.
Ако на входа имаме 1, на изхода ще получим 0.
Обръщането на стойност може да изглежда като тривиална задача, но в компютрите можем да изградим много сложна логика, като използваме множество малки оператори.
AND елемент
Всички останали логически елементи приемат по няколко входящи стойности. AND елементът има два входящи проводника, като ако и двата са "включени" (означаващи 1), той връща 1:
Ако някой от проводниците е "изключен" (означаващ 0), стойността на изхода е 0:
AND е булева операция. Тя приема стойности, които са "вярно" или "невярно", обработва ги и връща "вярно" или "невярно". При логическите елементи приемаме, че "вярно" е 1, а "невярно" – 0.
Един от начините да разберем булевите операции е да направим таблица за истинност, която съдържа всички възможни комбинации от входящи и изходящи стойности. Така изглежда таблицата за истинност за логическия елемент AND:
Вход A | Вход B | Изход |
---|---|---|
Вярно | Вярно | Вярно |
Вярно | Невярно | Невярно |
Невярно | Вярно | Невярно |
Невярно | Невярно | Невярно |
Забележи, че има само един ред, в който изходната стойност е "вярно". Това се случва само когато и двете входящи стойности са "вярно".
Можем също да попълним таблицата за истинност с 1 и 0, за да бъдем по-близо до "компютърния език".
Вход A | Вход B | Изход |
---|---|---|
1 | 1 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
0 | 0 | 0 |
Отново има само един ред, където изходната стойност е 1.
Ами ако искаме обратното – логически елемент, който почти винаги да връща 1? Има такъв!
OR елемент
Логическият елемент OR приема две стойности и ако някоя от тях е 1, връща 1.
Нека погледнем таблицата за истинност за "OR" елементите:
Вход A | Вход B | Изход |
---|---|---|
1 | 1 | 1 |
1 | 0 | 1 |
0 | 1 | 1 |
0 | 0 | 0 |
Както виждаш, изходната стойност е 1 на всеки ред освен един. Единственият случай, когато логическият елемент "OR" връща 0, е тогава, когато и двете входящи стойности са 0.
Да помислим логически
Може би ще бъде полезно да погледнем върху операциите на логическите елементи, като използваме примери от всекидневието.
Да вземем един OR елемент. Нека първата входяща стойност да бъде "навън вали", а втората – "отиваме на разходка в планината". Изходящата стойност тогава би била "трябва да си обуем ботушите".
Ако навън вали или (OR) отиваме на разходка в планината, то трябва да си обуем ботушите. Можем да го формулираме с повече думи: ако е вярно, че "навън вали", или (OR) ако е вярно, че "отиваме на разходка в планината", то е вярно, че "трябва да си обуем ботушите".
Това означава, че ако навън вали (без значение дали отиваме на разходка в планината), трябва да си обуем ботушите. Ако отиваме на разходка в планината (без значение дали навън вали), трябва да си обуем ботушите. Единствената ситуация, в която не трябва да си обуем ботушите (според този логически елемент), е тогава, когато навън не вали и не отиваме на разходка в планината.
Това е значително опростяване на сложната логика, според която хората решават кога да обуят ботуши, но показва, че логиката е нещо, което е тясно свързано с "истинския живот" извън компютъра.
Зад абстракцията
Логическите елементи, с които се запозна, са абстракции на реални устройства. Логическият елемент определя всяко устройство, което приема стойностите 0 и 1 и връща 0 или 1 според съответната таблица за истинност.
В повечето съвременни компютри логическите елементи са направени от транзистори в комбинация с други компоненти като резистори и диоди. Всички те са свързани по такъв начин, че да преобразуват входящите сигнали по начина, който очакваме.
С помощта на малко електротехническо оборудване можеш да сглобиш логически елементи, както показва това видео. Това са произведените в домашни условия платки за AND и OR елементите от видеото:
Ако разглобиш компютъра си (не го прави!), няма да видиш нищо подобно. Нашите мощни компютри се нуждаят от милиарди елементи, които производителите са намерили начин да правят съвсем малки. Моят личен лаптоп има 5,6 милиарда транзистора, всеки от които е широк само 14 нанометра.
Ние можем да разберем и да използваме логическите елементи, без да имаме нужда да разбираме как точно са конструирани. Това е силата на абстракцията – тя ни дава възможността да игнорираме детайлите и да се концентрираме върху функционалността на по-високо ниво.
Научи повече
Всъщност логическите елементи NAND и NOR са известни още като универсални елементи, защото с тях може да се конструира всеки един от другите логически елементи. Производителите на хардуер предпочитат да използват NAND елементи заради тяхната универсалност и лесното им производство. В платките на компютъра ти вероятно има милиони NAND елементи.
🙋🏽🙋🏻♀️🙋🏿♂️Имаш ли въпроси по темата? Ще се радваме да ти отговорим, просто задай въпросите си по-долу!
Искаш ли да се присъединиш към разговора?
Все още няма публикации.