Архитектура компьютераПрограммы и троичная логика

Странно, что вводя базовое состояние NULL для минимальной единицы информации и говоря о троичной логике, не замечают, что программный подход в решении задач противоречит самой троичной логике.
Пока не будет пересмотрена архитектура, от процессорной(программно управляемой) к логической, никакого особого толка не будет.
Есть в описанной троичной системе конечно преимущество в плане экономичности и рациональности представления чисел, но это не дает особого выигрыша по сравнению с раскрученной двоичной архитектурой.
Может выигрыш и есть, но он теряется среди двоичных гигантов.

Подумайте о логической машине, а не вычислительной. Иначе, все разговоры о троичных системах, суть разговоры о простой модернизации тех же систем двоичной логики.
Обрабатывая троичное представление чисел все теме же двоичными средствами

Максим,

Мнения

  • 001Максим

    Из воспоминаний о прошлом, всеж добавлю для размышлений коллег.

    Брусенцов: силлогистика Аристотеля с законом сосуществования противоположностей и с ПРИВХОДЯЩИМ в качестве третьего-среднего есть та самая диалектическая логика

    Задумаемся о слове - ПРИВХОДЯЩЕЕ
    На языке жесткой логики, это нечто предшествующее, еще не определенное, еще неизвестное. И не true и не false.
    Это состояние мы определяем как NULL(ничто, не true и не false), нечто, от чего стоит оттолкнуться и сделав шаг, перейти к состоянию true или false.
    Заметте, как упорно я склоняю мысль к наличию временного действа. Как прошлое NULL, в миг становится настоящим true или false.

    Возвращаюсь к двоичным системам и банальному хранению и представлению данных.
    Вот есть у меня двоичная ячейка памяти. Глядя на состояние ячейки, могу ли я знать о истинном состоянии оной? Нет. Нет. И еще раз - Нет. Состояние ячейки вроде true. Но истинно ли оно? Истинно ли оно в данный момент времени? Это мы знать не можем, пока на помощь не придет наш друг процессор. Пока, согласно инструкциям нашей дорогой программы не настанет момент истины. Момент истины задается именно программой дающей инструкции процессору. Именно программа задает время, когда в ячейке может находится все что угодно(прошлое), а когда и истинное true или false.

    Заметте, все время клоню ко времени.
    Какая бы не была система, естественная или цифровая, все процессы протекают во времени.
    Двоичная:
    1. x = true;
    2. y = false;
    3. z = x + y;
    Шаги этой программы, это я задал течение времени для выполнения задачи. А как же по другому? Я четко определил, что мусор прошлого в X становится истиной true в настоящем. И мусор прошлого в Y становится истиной false в настоящем. А в будущем, мусор из прошлого в Z должен стать истинной суммой true и false.
    Шаги программы исполнил процессор.

    Мы не можем без программы обойтись. Именно в программе записано, когда в тех или иных регистрах мусор, а когда и истинное и полезное значение.
    Это просто и понятно. Можно с легкостью определять пространство и время системы, описывать функции и на выходе получать результаты.
    Но это работает линейно. последовательно. Шаг влево или вправо от заранее определенной парадигмы, немедленный крах всей системы.
    Мир синтетический. неустойчивый.
    Чего не скажешь о реальном мире. Мы его крушим и ломаем, а он продолжает функционировать.

    Сильно отвлекся. Простите

    Так вот: что дает нам троичный подход?
    Как было сказано ранее - имеем три логических состояния в основании системы. TRUE, FALSE, NULL
    TRUE и FALSE нам хорошо знакомы из двоичных систем. Типа, подтверждение и отрицание. Но что есть NULL ? Нечто неизвестное(и не true и не false). А может быть это TRUE. А может быть это FALSE. Но мы этого Еще не знаем. Не наступило еще время, когда станет известно.
    Именно здесь и кроется шаг из прошлого в настоящее. Здесь сама крошечная ячейка хранящая минимальную единицу информации, несет в себе информацию о времени. Именно этот шаг перехода из состояния NULL в состояние TRUE или FALSE заменяет то, что раньше приходилось описывать в программе и исполнять процессору.
    Сами ячейки хранят, задают и реализуют последовательности. Мы отказываемся от процессорных систем и возвращаемся к арифметико-логическим устройствам.
    Система получается логической, а не вычислительной.

    На сегодня все. Устал

    • 003Serg

      Если я что-то понимаю в философии, то любое событие разворачивается во времени, поэтому теорема Пифагора хоть и существует от сотворения мира, но осознанно используется только с момента ее открытия.
      Отсюда вывод: ПРОГРАММА сама по себе может существовать как угодно, но работать она начинает только когда работает как ПРОЦЕСС в процессоре.
      В концепцию описанной системы предложенная архитектура как-то не вписывается. Получается существование программы уже означает, что она выполняется.
      Существование теорема Пифагора с практической точки зрения бесполезно, пока мы не дадим команду "вычислить гипотенузу"

      • 004Vasdi

        Получается, что память должна сама себе присвоить значение на основании значений расположеных где-то ещё. Это сильно напоминает (имкуственные) нейронные сети.
        [флуд]
        Я не знаю применялись ли сбалансировнные троичные коды для них, но читал что в двоичной реализации состояния нейрона при синхронной работе сеть иногда начинает бесконечно инвертироваться от такта к такту, хотя в асинхронном режиме уравновешивается. Интересно, а что бы было если бы у нейронов было представление неопределённости.
        [/флуд]

        • 005Serg

          Я представляю систему в таком виде: несколько ячеек троичной памяти, связанных между собой каким-либо образом (как именно это уже другое дело). Пока ячейка находитсяв состоянии TRUE или FALSE, то все в порядке. Если эта ячейка по какой-либо причине обращается в NULL, то она начинает действовать на соседние ячейки с целью "вычислить себя". Как именно происходят эти процессы, мне не совсем опнятно. Но в целом идея здравая, архитектура коренным образом отличается от традиционной "память - процессор - устройство вывода" и ввод, работающий программно или на прерываниях.
          Это несколько другая тема (то есть это собственно некая СЕТЬ, а не ЭВМ).
          В самом деле, если у ячейки 3 состояния, то логика работы более понятна, чем если ячейка двоичная.

          • 006Alexander ObukhovТринари

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

  • 002Бармалейкин

    Собственно, Вы размышляете в совершенно верном ключе - это направление тоже активно разрабатывается. Насколько мне известно, в МГУ идёт работа как раз над реализацией троичной логической машины.

    Лично для меня пока представляет большой интерес вопрос устранения избыточности исходных двоичных данных (или хотя бы его сильного сокращения) и вычисления с применением уравновешенного (или симметричного) троичного кода. Причём, в последнее время, заинтересовало иерархическое представление данных с использованием трёх состояний.