
- •Алгебра логики
- •Содержание
- •Определение[править | править исходный текст]
- •Аксиомы[править | править исходный текст]
- •Логические операции[править | править исходный текст]
- •Свойства логических операций[править | править исходный текст]
- •История[править | править исходный текст]
- •См. Также[править | править исходный текст] Булева алгебра
- •Содержание
- •Некоторые свойства[править | править исходный текст]
- •Основные тождества[править | править исходный текст]
- •Примеры[править | править исходный текст]
- •Принцип двойственности[править | править исходный текст]
- •Представления булевых алгебр[править | править исходный текст]
- •Аксиоматизация[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Примечания[править | править исходный текст]
- •Литература[править | править исходный текст]
- •Булева функция
- •Содержание
- •Основные сведения[править | править исходный текст]
- •Нульарные функции[править | править исходный текст]
- •Унарные функции[править | править исходный текст]
- •Бинарные функции[править | править исходный текст]
- •Тернарные функции[править | править исходный текст]
- •Полные системы булевых функций[править | править исходный текст]
- •Суперпозиция и замкнутые классы функций[править | править исходный текст]
- •Тождественность и двойственность[править | править исходный текст]
- •Полнота системы, критерий Поста[править | править исходный текст]
- •Представление булевых функций[править | править исходный текст]
- •Дизъюнктивная нормальная форма (днф)[править | править исходный текст]
- •Конъюнктивная нормальная форма (кнф)[править | править исходный текст]
- •Алгебраическая нормальная форма (анф или полином Жегалкина)[править | править исходный текст]
- •Классификация булевых функций[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Литература[править | править исходный текст]
- •Битовые операции
- •Содержание
- •Побитовые логические операции[править | править исходный текст]
- •Побитовое отрицание (not) [править | править исходный текст]
- •Побитовое и (and) [править | править исходный текст]
- •Побитовое или (or) [править | править исходный текст]
- •Сложение по модулю два (xor) [править | править исходный текст]
- •Другие побитовые логические операции[править | править исходный текст]
- •Битовые сдвиги[править | править исходный текст]
- •В теории сложности алгоритмов[править | править исходный текст]
- •Связь с другими науками[править | править исходный текст] Битовые операции и математическая логика[править | править исходный текст]
- •Обобщение операций на булеву алгебру[править | править исходный текст]
- •Битовые операции как основа цифровой техники[править | править исходный текст]
- •Практические применения[править | править исходный текст]
- •Физическая реализация битовых операций[править | править исходный текст]
- •Схемы аппаратной логики[править | править исходный текст]
- •Использование в программировании[править | править исходный текст]
- •См. Также[править | править исходный текст]
- •Примечания[править | править исходный текст]
- •Навигация
- •Двоичный сумматор[править | править исходный текст]
Практические применения[править | править исходный текст]
С точки зрения применения отдельная битовая операция мало интересна. Поэтому практическое применение основывается на способах комбинирования различных битовых операций, для реализации более сложного вычисления. Можно отметить два аспекта:
увеличение размера регистров, в которых битовые операции выполняются не по одной, а сразу на множестве 8, 16, 32, 64 битах
экспериментальные устройства, где обобщают битовые операции с двоичной системы, на троичные и прочие системы счисления (так например, разработана теория работы с четверичной системой (ДНК-компьютер), так же делаются исследования в области квантового компьютера).
Физическая реализация битовых операций[править | править исходный текст]
Реализация битовых операций может в принципе быть любой: механической (в том числе гидравлической и пневматической), химической, тепловой,[10]электрической, магнитной и электромагнитной (диапазоны — ИК, видимый оптический, УФ и далее по убыванию длин волн), а также в виде комбинаций, например,электромеханической.
В первой половине XX векадо изобретениятранзисторовприменяли электромеханическиерелеиэлектронные лампы.
В пожароопасных и взрывоопасных условиях до сих пор применяют пневматические логические устройства (пневмоника).
Наиболее распространены электронныереализации битовых операций при помощитранзисторов, напримеррезисторно-транзисторная логика(РТЛ),диодно-транзисторная логика(ДТЛ),эмиттерно-связанная логика(ЭСЛ),транзисторно-транзисторная логика(ТТЛ),N-МОПлогика,КМОПлогика и др.
Одной из причин, из-за которой базовые (основные) логические элементы строят на инверторах, а повторители являются дополнительными элементами, было то, что в электронике инверторы(ОЭ) мощнееповторителей(ОК). Но основной причиной является то, что два инвертора заменяют один повторитель, а на повторителях инвертор не построить.
В квантовых вычисленияхиз перечисленных булевых операций реализуются только НЕ и искл. ИЛИ (с некоторыми оговорками). Квантовых аналогов И, ИЛИ и т. д. не существует.
Схемы аппаратной логики[править | править исходный текст]
Результат операции ИЛИ-НЕ или ИЛИ ото всех битов двоичного регистра проверяет, равно ли значение регистра нулю; то же самое взятое от выхода искл. ИЛИ двух регистров проверяет равенствоих значений между собой.
Битовые операции применяются в знакогенераторах и графических адаптерах; особенно велика была их роль в адаптереEGAв режимах с 16 цветами — хитроумное сочетание аппаратной логики адаптера с логическими командами центрального процессора позволяет рассматривать EGA как первый в историиграфический ускоритель.
Использование в программировании[править | править исходный текст]
Благодаря реализации в арифметическом логическом устройстве (АЛУ)процессорамногие их регистровые битовые операции аппаратно доступны вязыках низкого уровня. В большинстве процессоров реализованы в качестве инструкции регистровый НЕ; регистровые двухаргументные И, ИЛИ, исключающее ИЛИ; проверка равенства нулю (см. выше); три типа битовых сдвигов, а также циклические битовые сдвиги.
Регистровая операция И используется для:
проверки бита на 0 или 1
установки 0 в указанный бит (сброса бита)
Регистровая операция ИЛИ используется:
установки 1 в указанный бит
Регистровая операция исключающее ИЛИ используется для инвертирования битов регистра по маске Сдвиг влево/вправо используется для умножения/целочисленного деления на 2 и выделения отдельных битов.
Так, например, в сетевых интернет-технологиях операция И между значением IP-адресаи значением маски подсети используется для определения принадлежности данного адреса к подсети.