Сумматор двоичных чисел Презентацию подготовила Учитель информатики и ИКТ ГБОУ СОШ №1324 г.Москвы Бирюкова Т.В.
Сумматор двоичных чисел И в двоичной системе счисления, и в алгебре логики информация представлена в виде двоичных кодов (0,1). Для того, чтобы максимально упростить работу компьютера, все математические операции сводятся к операции сложения. Поэтому главной частью процессора является сумматор, который как раз и обеспечивает такое сложение. Перенос в старший разряд Слагаемые Перенос Сумма А В P S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0
Перенос можно реализовать с помощью операции логического умножения: P= А & В Для определения суммы можно применить следующее логическое выражение: S = (А v В) & (А & В) схема полусумматора А В А В Р S 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0
Данная схема называется полусумматором, так как реализует суммирование одноразрядных двоичных чисел без учёта переноса из младшего разряда
Полный одноразрядный сумматор 11111 10101 11111 110100 + pipi-1 an………aiai-1…a0 bn………bibi-1…b0 Sn+1Sn…SiSi-1… S0 + Таким образом, полный одноразрядный сумматор должен иметь три входа: А, В – слагаемые и P0 –перенос из младшего разряда и два выхода: сумму S и перенос P. слагаемые Перенос из младшего разряда Пере нос Сум ма A B P0 P S 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1
Из таблицы сложения видно, что перенос (P) принимает значение 1 тогда, когда хотя бы две логические переменные одновременно принимают значение 1. Т.о., перенос реализуется путём логического сложения результатов попарного логического умножения входных переменных А,В,P0. P=(A&B)+(A&P0)+(B&P0) Для получения суммы (S) необходимо результат логического сложения входных переменных А,В,P0 умножить на инвертированный перенос P. S=(A+B+P0)&P слагаемые Перенос из младшего разряда Пере нос Сум ма A B P0 P S 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1
1 Данное логическое выражение даёт правильные значения суммы во всех случаях, кроме одного, когда все входные логические переменные принимают значение 1. P = (1 1) (1 1) (1 1) = 1; S = (1 1 1) P = 1 0 = 0. Для получения правильного значения суммы (S=1) необходимо использовать следующую формулу: S=(A B P0) & P0( A & B & P0) слагаемые Перенос из младшего разряда Пере нос Сум ма A B P0 P S 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1
Теперь можно построить схему одноразрядного сумматора
Многоразрядный сумматор Но процессор, как правило, складывает многоразрядные двоичные числа. Для того, чтобы вычислить сумму n – разрядных двоичных чисел, необходимо использовать многоразрядный сумматор, в котором на каждый разряд ставится одноразрядный сумматор и выход – перенос сумматора младшего разряда – подключается к выходу сумматора старшего разряда. А0 В0 P0 S0 А1 В1 P1 P2 P3 S1 S2 A2 B2