nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 16 Jul 2019 00:02



Reply to topic  [ 71 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Определение чётности числа в уравновешенной троичной системе 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
AlexanderZh wrote:
Не знаю на сколько нужен. Но так как троичка, то видимо делать нужно 3 состояния:
+1 - чётное
0 - ноль
-1 - нечётное.

А если число многоразрядое?... :lol:

_________________
iLavr


11 Jan 2019 15:51
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17905
Location: Colorado
Reply with quote
Вопрос а насколько надо знать чётное число или нет "мгновенно"?...

_________________
:eugeek: https://twitter.com/Shaos1973


11 Jan 2019 20:28
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Вопрос а насколько надо знать чётное число или нет "мгновенно"?...

Так это и есть вопрос, который я ранее задал: а нужен ли вобще флаг четности?

Я его учитывал просто как четность числа - удобно для алгоритмов типa: "на 1-й, 2-й рассчитайсь".

Классически четность, как четное или нечетное число единиц в слове, была введена для контроля
приёма-передачи информации.
Но потом аппаратно это стали делать сами БИС различных контроллеров и необходимость в этом флаге
перестала быть актуальной.

В принципе - один циклический сдвиг, типа RAL, и четность уже проверяется как флаг C в двоичности.

Поэтому я и задал тут вопрос, а нужен ли вобще флаг четности в троичном CPU?

_________________
iLavr


12 Jan 2019 02:27
Profile
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 452
Location: Spb
Reply with quote
Lavr wrote:
А если число многоразрядое?... :lol:

Проблем не вижу. Схемная реализация вроде чуть сложнее чем определение знака.


12 Jan 2019 03:07
Profile
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 452
Location: Spb
Reply with quote
Lavr wrote:
Поэтому я и задал тут вопрос, а нужен ли вобще флаг четности в троичном CPU?

Так а в двоичке его когда используют? Только для контроля? Других применений не придумывается.


12 Jan 2019 03:09
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Похоже, что в двоичке его сейчас уже никак не используют, насколько мне известно.

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

_________________
iLavr


12 Jan 2019 05:13
Profile
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 452
Location: Spb
Reply with quote
Lavr wrote:
его сейчас уже никак не используют

Вот и ответ :mrgreen:
Если в троичке и нужна "четность", то скорее в виде потритовой суммы трайта (этакое однотритовое подобие CRC)


12 Jan 2019 05:33
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
AlexanderZh wrote:
Если в троичке и нужна "четность", то скорее в виде потритовой суммы трайта (этакое однотритовое подобие CRC)

А она и в двоичке по жизни только при вычислении CRC использовалась...
Была такая статья "Вычисляем CRC..." в журнале "Радиолюбитель", там прямо
и было написано, что, пожалуй, это единственное место, где флаг четности
применяется с пользой... :wink:

К примеру, у популярного процессора 6502 никакого флага четности не было отродясь:
Attachment:
6502flags.gif
6502flags.gif [ 14.51 KiB | Viewed 419 times ]

Но это всё двоичка, как говорится, "проехали"...

Другое дело, если мы сочиняем троичный процессор, возможно, флаг четности ему и нужен.
Никто же не приложил пока специальных БИС или аппаратных средств троичной логики, где
всё это вычисляется без процессора и аппаратно.

_________________
iLavr


12 Jan 2019 05:55
Profile
Fanat
User avatar

Joined: 18 Nov 2014 10:17
Posts: 52
Location: Отсюда
Reply with quote
Тут же как раз фокус в вычислении:
Сумма чисел четного числа (в троичной системе) является четным числом, меньшим, чем число.
В случае числа 2, сумма равна числу. То есть, каждое вычисление суммы просто сьедает лишние разряды.
Из большого числа типа PNNPPOONNPPNNOOPPNNOP(2'107'373'806) остается PNNP(16).
Из которого уже получаем PP(4), из которого получаем PN(2).
Если в конце получили 2, значит четное. Если хоть раз не получили - нечетное.

З.Ы. Кстати, сумма количества ненулевых разрядов штука нужная.
Наверняка понадобится для определения знака числа:
пока она больше 1/-1, сдвигаем вправо (делим на 3 с отбрасыванием). стала равна -1/0/1 = получаем знак числа.


12 Jan 2019 06:17
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
JeNNeR wrote:
Кстати, сумма количества ненулевых разрядов штука нужная.
Наверняка понадобится для определения знака числа:

Знак числа аппаратно определяется довольно просто без подсчета ненулевых разрядов.
Хотя, конечно, сложнее, чем в двоичности... :wink:

Может быть, опять же при передаче данных сумма количества ненулевых разрядов может понадобиться

_________________
iLavr


12 Jan 2019 08:07
Profile
Doomed

Joined: 10 Mar 2012 17:21
Posts: 601
Location: РФ
Reply with quote
Собственно вопрос плавно переходит в плоскость « Троичный "CRC" в кремнии . Как реализовать. И нужно ли ? »


12 Jan 2019 22:48
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17905
Location: Colorado
Reply with quote
Давайте не будем путать чётность числа (делимость нацело на 2) и чётность количества единиц в его двоичном представлении (parity) - последнее возможно и нужно, но своё, троичное...

_________________
:eugeek: https://twitter.com/Shaos1973


13 Jan 2019 00:39
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
А мы и не путаем, просто обсуждение так пошло сумбурно.

Топик же звучит как: "Определение чётности числа в уравновешенной троичной системе"
В процессоре возможен "флаг четности", вот я и решил посоветоваться с коллегами,
нужен ли в троичном процессоре "флаг четности", и что он должен отражать, если нужен.

А путать - тут никто ничего не путает.

_________________
iLavr


13 Jan 2019 05:13
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 17905
Location: Colorado
Reply with quote
Ну началось всё как раз с чётности как признака делимости на 2 без остатка :)

Кстати если для определения чётности в троичной системе речь идёт о подсчёте ненулевых разрядов, то оно как бы само собой сливается с понятием "parity"

Тогда оно наверное таки надо - загоню задачку в DDT, посмотрим что оно нагородит ;)

_________________
:eugeek: https://twitter.com/Shaos1973


13 Jan 2019 12:50
Profile WWW
Doomed
User avatar

Joined: 21 Mar 2017 13:50
Posts: 452
Location: Spb
Reply with quote
Аппаратная реализация выглядит так. Это если "0" считать чётным числом.


Attachments:
чётность.png
чётность.png [ 13.61 KiB | Viewed 379 times ]
13 Jan 2019 13:37
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 71 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.