![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Задумался о представлении данных в программе и в числе возможных кандидатов промелькнула пара (числитель/знаменатель). Вдруг понял, что на таком принципе может быть даже построен универсальный процессор.
Сейчас числа в процессорах представлены тремя способами:
целое, порядок+мантисса, цифрами.
Кажется интеловские процессоры все еще поддерживают десятичные цифры - родовая травма :-)
Ну и вот - чизнамы.
И что особенно приятно, отпадает проблема деления на ноль, поскольку чизнамы вида (N / 0) и действия над ними выглядят вполне определенно, например:
(3/0) * (13/27) = (39/0)
(3/0) + (13/27) = (3/0)
(3/0) / (13/27) = (27/0)
(3/0) * (0/27) = (3/27)
Можно подшлифовать, чтобы, подобно комплексным числам, действия с (N / 1) были тождествены действиям с числами.
Сейчас числа в процессорах представлены тремя способами:
целое, порядок+мантисса, цифрами.
Кажется интеловские процессоры все еще поддерживают десятичные цифры - родовая травма :-)
Ну и вот - чизнамы.
И что особенно приятно, отпадает проблема деления на ноль, поскольку чизнамы вида (N / 0) и действия над ними выглядят вполне определенно, например:
(3/0) * (13/27) = (39/0)
(3/0) + (13/27) = (3/0)
(3/0) / (13/27) = (27/0)
(3/0) * (0/27) = (3/27)
Можно подшлифовать, чтобы, подобно комплексным числам, действия с (N / 1) были тождествены действиям с числами.