2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.
 
 Re: Сложение и другие арифметические операции
Сообщение12.04.2018, 23:05 
Экс-модератор
Аватара пользователя


23/12/05
12068
epros в сообщении #1303564 писал(а):
(из-за троеточия).

ОК, а если тогда говорить, что не существует такой пары $(b, N)$, где $b > 1, N >1$, что $a = \sum\limits_{i=1}^N {b}$ - это можно считать формулой арифметики?

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 00:38 
Заслуженный участник


27/04/09
28128
Введение $\sum$-нотации усложняет язык ещё сильнее, чем введение умножения. :-)

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 04:32 


06/04/18

323
photon, нельзя.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 07:58 
Экс-модератор
Аватара пользователя


23/12/05
12068
Ну и ладно - нельзя так нельзя.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 13:19 
Заслуженный участник
Аватара пользователя


23/07/05
18031
Москва
Chifu в сообщении #1302900 писал(а):
Если уж на то пошло, то на универсальном компьютере все вычисления выполняются через два состояния и логический базис.
На самом деле это ходячее заблуждение. Кроме логических операций, там ещё используются операции "выделение заданного бита" и, возможно, ещё какие-нибудь, я специально анализом электронных схем не занимался. Эти операции "замаскированы" и в глаза не бросаются, но они есть. Попробуйте определить, например, прибавление единицы к многоразрядному двоичному числу через чисто логические операции.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:01 
Заслуженный участник


20/08/14
11986
Россия, Москва
Someone в сообщении #1303820 писал(а):
Кроме логических операций, там ещё используются операции "выделение заданного бита"
Если подразумевается мультиплексор, то он тоже реализуется чисто логической схемой. Как и демультиплексор.
Someone в сообщении #1303820 писал(а):
Попробуйте определить, например, прибавление единицы к многоразрядному двоичному числу через чисто логические операции.
Вообще без проблем, полный однобитный сумматор реализуется чисто логической схемой, объединяя их в нужном количестве проводами получим сумматор необходимой разрядности. Для суммирования произвольно длинного числа обычно используется последовательная подача битов числа и тогда достаточно лишь однобитного сумматора и элемента памяти для переноса (а любые триггеры тоже реализуются чисто логической схемой).
Так что в логике (хоть И-НЕ, хоть ИЛИ-НЕ) реализуется всё что угодно.
Кроме разумеется двунаправленных шин, для которых требуется третье (Z) состояние выхода логического элемента.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:08 
Заслуженный участник
Аватара пользователя


16/07/14
9446
Цюрих
Тут нужно уточнить, что мы понимаем под "чисто логическими операциями" и скажем "сложением чисел".
Например, сложение $n$-разрядных чисел определим так: на вход два $n$-разрядных числа, на выходе одно $n+1$-разрядное.
Теперь вопрос - что такое "логические операции"? Если побитовые - то так сделать не получится, т.к. они все сохраняют разрядность. Если принимающие на вход $1$ бит - то так не получится, т.к. нужны еще какие-то операции, этот бит из входа выделяющие.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:17 
Заслуженный участник
Аватара пользователя


28/09/06
11211
mihaild в сообщении #1303874 писал(а):
что такое "логические операции"
Обычно конъюнкция и дизъюнкция (с любым количеством аргументов) и отрицание. Схема $n$-битного сложения на них действительно реализуется довольно просто.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:20 
Заслуженный участник
Аватара пользователя


16/07/14
9446
Цюрих
epros в сообщении #1303877 писал(а):
Обычно конъюнкция и дизъюнкция (с любым количеством аргументов) и отрицание. Схема $n$-битного сложения на них действительно реализуется довольно просто.
Не реализуется: $i$-й бит выхода зависит только от $i$-х битов аргумента, а для сложения это неверно.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:23 
Заслуженный участник
Аватара пользователя


28/09/06
11211
Вообще, она ещё лучше (в смысле задержек на переключение) реализуется на переключателях (открывающих или закрывающих в зависимости от управляющего сигнала).

mihaild в сообщении #1303881 писал(а):
$i$-й бит выхода зависит только от $i$-х битов аргумента
Такого условия нет. Биты переноса формируются из других разрядов.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 15:32 
Заслуженный участник
Аватара пользователя


16/07/14
9446
Цюрих
Так, выше бред написал. Но всё равно, у нас на входе две $n$-битных строки. Чтобы сделать с ними что-то интересное, нужно уметь выделять из них биты, и потом еще склеить выходы в одну строку.
(хотя не очень понимаю, о чем обсуждение; определение булевых схем известно, и спорить о том, есть ли там на "неформальном уровне" что-то кроме логических операций, не очень интересно)

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 16:02 
Заслуженный участник
Аватара пользователя


28/09/06
11211
mihaild в сообщении #1303887 писал(а):
нужно уметь выделять из них биты, и потом еще склеить выходы в одну строку
Непонятно в чём проблема. "Выделять биты" - это значит, что на входы какого-то $i$-того логического элемента подаются строго какие-то $j$-тые биты слагаемых. А "склеить в строку" означает, что $k$-тый бит суммы берётся с выхода какого-то $l$-того логического элемента. Вообще, это жёстко зашитая схема. После подачи чего-то на входы (в биты слагаемых) получаем что-то на выходе (в битах суммы).

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 16:54 
Заслуженный участник
Аватара пользователя


16/07/14
9446
Цюрих
Ну вот проблема в том, что нам на вход дают что-то из $\mathbb{Z}_2^n$, логические элементы выдают что-то из $\mathbb{Z}_2$, на вход хотят что-то из $\mathbb{Z}_2^k$, а на выходе схемы нам вообще нужно что-то из $\mathbb{Z}_2^{n+1}$. И кроме собственно логических элементов нужно что-то, склеивающее несколько битов в одну строчку, либо наоборот выделяющее определенный бит.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 17:20 


30/01/17
245
Someone в сообщении #1303820 писал(а):
На самом деле это ходячее заблуждение.

Реализовать можно абсолютно любую операцию. Хоть корень: у Вас есть $n$ бит, которые являются представлением числа. Вы хотите получить $n$ бит, которые будут представлением корня из этого числа. Далее нужно рассматривать каждый бит результата как функцию всех $n$ бит представления исходного числа. Затем получается $n$ функций, каждую из которых можно записать используя только логические операции (например, записать ДНФ и разложить ее в нужный базис) Другой вопрос, что так никто не будет делать из-за того, что функции будут огромными.
Для извлечения корня скорее будет использован какой-то алгоритм. Но и тут можно обойтись только логическими функциями. Для реализации алгоритма нужно построить автомат, для хранения состояния которого нужна память. Память можно тоже реализовать с использованием только логических функций и бесконечной рекурсии, которая на практике получают соединением выхода со входом. В компьютере все можно реализовать с использованием логических операций, но так делают не всегда из-за существование альтернативных методов достижения того же результата.

Я нисколько не сомневаюсь в том, что написанное Вами верно с математической точки зрения. И мне очень интересно почему. Я был бы очень Вам признателен, если бы Вы написали какие разделы математики нужно знать, чтобы понять что Вы имели в виду.

 Профиль  
                  
 
 Re: Сложение и другие арифметические операции
Сообщение13.04.2018, 17:30 
Заслуженный участник


20/08/14
11986
Россия, Москва
mihaild в сообщении #1303919 писал(а):
И кроме собственно логических элементов нужно что-то, склеивающее несколько битов в одну строчку, либо наоборот выделяющее определенный бит.
Поясните что это такие за операции "склеивания бит" и "выделения бит"? Да ещё и "в строчку"?
Если выделение постоянно, то оно реализуется тупо проводом (для каждого бита) между триггерами хранения чисел. Если переменно (зависит от каких-то логических сигналов) - реализуется мультиплексором, который тоже состоит только из логических элементов.
Склеивание бит реализуются аналогично, или тупо проводами, или демультиплексором только из логических элементов.
Преобразование числа из $n$ битов в $n+1$ битов реализуется $n$ проводами и подачей на $n+1$ вход логического 0 (провод к выводу питания) для беззнаковых чисел или соединением входа $n+1$ с выходом $n$ для знаковых чисел в дополнительном коде.
Ничего кроме логических элементов (и проводов, и одной константы 0 или 1 без разницы - которую обычно реализуют тупо проводом к выводу питания) не нужно.
PS. Надеюсь Вы не забыли в формулах возможность соединения одного выхода логического элемента со многими входами логических элементов.

Add.
Вообще представление чисел как строк символов или битов или неких математических значений - находится поверх аппаратной реализации. Аппаратно есть лишь логические элементы, провода и константа (0 или 1 без разницы). Всё. Если из логических элементов сформирован некий массив триггеров, то что за числа в нём находятся - лишь соглашение, интерпретация, аппаратно никак не отражённая. Даже в разные моменты времени можно считать что там или одно число, или два, или 100500 (если триггеров достаточное количество). Например положительные числа в дополнительном коде и беззнаковые числа на уровне аппаратуры абсолютно идентичны, неразличимы, мы их можем различить лишь по соглашению/договорённости.
Потому совершенно непонятно что за операции вставки/склейки и выделения битов тут придумали.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 99 ]  На страницу Пред.  1, 2, 3, 4, 5, 6, 7  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: B@R5uk


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group