Вся цифровая схемотехника основывается на теоретических положениях, сформулированных в Булевой алгебре, которая в качестве объектов использует логические переменные.
Логическим переменным могут даваться различные имена. Чаще всего такими именами являются буквы латинского алфавита, например переменные A, B, C.
В качестве обозначений значений входных и выходных логических переменных также используют, принятые в алгебре обозначения: X — входная переменная, Y — выходная переменная. Если входных и выходных переменных несколько, то они будут отличаться индексами, например, X2, X1, X0 или Y2, Y1, Y0.
Значения логических переменных обозначают вербально, как правда (true) и ложь (false). Вербальные значения неудобны в многократном использовании, поэтому их замещают бинарными (логическими) значениями 0 (false) и 1 (true).
Над логическими переменными определяются логические операции. В качестве входных и выходных значений логических операций могут быть только логические (бинарные) значения.
При переходе от алгебраической реализации логических операций к схемотехнической возникает задача: каким образом закодировать входные и выходные значения логических переменных и каким образом реализовать логические операции?
В настоящее время наиболее распространена реализация логических операций на электронных схемах. Это обусловливает и электрический характер кодирования значений логических переменных. Наиболее распространенным способом кодирования значений логических переменных является потенциальное кодирование, когда значениям логических переменных 0 (false) и 1 (true) ставится в соответствие уровень напряжения U0 и U1. Все было бы хорошо, если бы цифровые схемы были бы идеальными. Однако это не так. Изготовить абсолютно идентичные логические элементы, поместить их в одни условия, запитать их одинаковым напряжением невозможно. Это приводит к тому, что для значений U0 и U1 невозможно задать какое-то точечное значение, например, U0 = 0 В, U1 = 5 В. Поэтому, для физических эквивалентов значений логических переменных задают интервальные значения.
Для цифровых схем с однополярным положительным значением напряжения питания, равным 5 В, к которым относится большинство современных цифровых схем:
(U0min = 0 В) < U0 < (U0max = 0,4 В),
(U1min = 2,4 В ) < U1 < (U1max = 5 В).
Графически предельные уровни напряжений для 0 и 1 показаны на рисунке.
Правильное соответствие физических значений логическим гарантируется при попадании физических значений в допустимые интервалы. При попадании физических значений в интервал неопределенности функционирование цифровой схемы будет непредсказуемым. Для логических элементов, выполняющих простейшие логические операции, существует так называемая передаточная характеристика, по которой можно точнее определить пределы физических значений U0 и U1 и напряжение переключения (Uпор.вх, Uпор.вых).
Помимо потенциального кодирования, в соответствии с физическими принципами функционирования цифровых схем, может применяться токовое кодирование. При токовом кодировании в качестве значений 0 и 1 может, например, использоваться направление протекания тока: втекающий ток — 1; вытекающий ток — 0, или значение такого тока.
В частности, при потенциальном кодировании также существует разнонаправленный ток 0 и 1.
Для логического 0 (левый рисунок) выходной ток управляющего логического элемента (ЛЭ) (DD1) будет втекающим, а входной ток управляемого ЛЭ (DD2) будет вытекающим.
Для логической 1 (правый рисунок) ситуация будет обратной: выходной ток управляющего логического элемента (DD1) будет вытекающим, а входной ток управляемого логического элемента (DD2) — втекающим.
Причем значения токов 0 и 1 будут отличаться в разы (миллиамперы и микроамперы соответственно).
Третьим параметром, который широко используется для кодирования логических значений, является время. Временное кодирование используется в системах передачи данных в видимом оптическом, инфракрасном, радио диапазоне. Логическое значение может кодироваться не только длительностью импульса излучения, но и его фазой.
Также логические значения могут кодироваться и любыми другими физическими величинами, например, освещенностью (включение/выключение осветительных приборов), емкостью (датчики приближения), частотой (сопряженная величина со временем) и т.д.
В большинстве случаев требуемая физическая величина первично преобразуется в напряжение/ток/время, а потом уже обрабатывается стандартными цифровыми схемами.