Вся информация, используемая при вычислениях, в цифровых машинах изображается в виде числа. Выбор системы счисления для работы машины осуществляется с учетом двух требований: минимум оборудования и удобство связи человек ≈ машина. Исследования показали, что первому требованию удовлетворяет система счисления с основанием е==2,7, т.е. практически двоичная или троичная система. Для построения машин удобна двоичная система. Человек привык считать в десятичной системе счисления, поэтому входная информация переводится машиной из десятичной в двоичную, а выходная ≈ наоборот.
В двоичной системе счисления любое число N может быть представлено комбинацией двух цифр 0 и 1, которые являются коэффициентами разложения числа по степеням основания 2:
Применение в вычислительной технике двоичной системы счисления обусловлено также тем, что такую систему легче всего реализовать с помощью двухпозиционных элементов, например полупроводниковых, находящихся в двух состояниях: открыт, закрыт. Поэтому она дает возможность значительно упростить конструкцию арифметических и запоминающих устройств. Двухпозиционные элементы наиболее экономичны и надежны. Использование двоичной системы счисления упрощает также арифметические действия, выполняемые по тем же правилам, что и действия над десятичными числами:
1000+100=1100 <=> 8(10)+4(10)+12(10) - сложение;
1000-100=900 -вычитание;
1011*101=1011+00000+101100=110111 - умножение;
1110101/1001=1110101-1001000-...=1101-вычитание.
Из приведенных примеров видно, что операция умножения может быть сведена к сложению частных произведений, которые представляют собой множимое число, сдвинутое влево на определенное число разрядов. Операция деления сводится к последовательному вычитанию делителя из остатка, полученного от предыдущего вычитания; вычитание можно заменить сложением уменьшаемого с использованием обратного кода вычитаемого.
Пусть А =1000 (8(10)), В=100(4(10));
1000(8(10))-100(4(10))=100(4(10))=C;
1000+011=1011 (обратный код);
011(3(10))+1(1(10))=100(4(10))=С
Действия А≈В=С в прямом коде и с применением обратного кода дают один и тот же результат С=100 (алгоритмы вычитания с применением обратного кода требуют отбрасывания старшего разряда суммы и сложения полученного результата с единицей). Таким образом, все четыре арифметических действия могут быть сведены к операции сложения и поразрядному сдвигу чисел.
Для построения узлов и устройств компьютера, а также как аппарат при составлении программ решения задач на вычислительной машине используется алгебра логики. Алгебра логики (часть математической логики) оперирует с предложениями (высказываниями), каждое из которых может быть либо истинным (кодируется ╚1╩), либо ложным (кодируется ╚0╩); других оценок предложение иметь не может. В основе решения сложных логических задач лежит несколько основных логических функций. Задать функцию алгебраической логики≈значит определить ее значение (╚0╩ или ╚1╩) при каждом возможном наборе значений аргументов. Возможные значения аргументов А, В, С,... и значений функций Q1, Q2, ... на каждом наборе аргументов задаются таблицей истинности.
Основными (элементарными) логическими функциями являются:
1. Функция ╚НЕ╩ (отрицание) читается: ╚не A╩, в таблице обозначена X:
Х
F
Набор функций "И", "ИЛИ", "НЕ" является функционально полным, т. е. любая сложная логическая функция может быть представлена комбинацией элементарных функций. В алгебре логики доказывается также, что минимальной функционально полной системой являются функции
"ИЛИ ≈ НЕ" ≈ отрицание дизъюнкции или инверсное логическое сложение,
"И ≈ НЕ" ≈ отрицание конъюнкции или инверсное логическое отрицание.
2. Функция ╚И╩ (конъюнкция) умножения обозначается: А/\В (А*В), читается ╚А и В╩.
Функция ╚И╩ принимает значение 1 только тогда, когда оба аргумента Л и В равны 1.
Таблица истинности для этой функции, где X-результат конъюнкции, имеет вид:
Х1
Х2
Х3
Из таблицы видно, почему функцию ╚И╩ называют также функцией логического умножения.
3. Функция ╚ИЛИ╩ (дизъюнкция) логическое сложение, обозначается А\/ В (А +5); читается ╚Л или В╩. Дизъюнкция принимает значение 1, если хотя бы один из аргументов А или В равен 1. Таблица истинности для функции ╚ИЛИ╩, где X -результат логического сложения, имеет вид:
А
В
Х
Применительно к компьютерным технологиям, это означает, что все устройства машины, работа которых описывается сложными логическими функциями, могут быть построены из набора основных логических элементов.