WikiDer > Компьютер для работы с функциями
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
А компьютер для работы с (математическими) функциями (в отличие от обычного компьютер) работает с функции на аппаратное обеспечение уровень (т.е. без программирования этих операций).[1][2][3]
История
Вычислительная машина для операций с функциями была представлена и разработана Михаилом Карцевым в 1967 году.[1] Среди операций этой вычислительной машины были функции сложения, вычитания и умножения, сравнение функций, те же операции между функцией и числом, нахождение максимума функции, вычисление неопределенный интеграл, вычисление определенный интеграл из производная двух функций, производная двух функций, сдвиг функции по оси X и т. д. архитектура эта вычислительная машина была (используя современную терминологию) векторный процессор или же процессор массива, а центральное процессорное устройство (CPU), который реализует набор инструкций, содержащий инструкции, которые работают с одномерные массивы данных, называемых векторов. В нем был использован тот факт, что многие из этих операций можно интерпретировать как известные операции над векторами: сложение и вычитание функций - как сложение и вычитание векторов, вычисление определенного интеграла производной двух функций - как вычисление векторного произведения двух векторов, сдвиг функции по оси X - как вращение вектора вокруг осей и т. д.[1] В 1966 году Хмельник предложил метод кодирования функций,[2] т.е. представление функций "единым" (для функции в целом) позиционным кодом. Таким образом, указанные операции с функциями выполняются как уникальные компьютерные операции с такими кодами на «единственном». арифметический блок.[3]
Позиционные коды функций одной переменной [2][3]
Главная идея
Позиционный код целого числа числовое обозначение цифр в определенном позиционная система счисления формы
- .
Такой код можно назвать «линейным». В отличие от него позиционный код с одной переменной функция имеет вид:
и так оно и есть плоский и «треугольный», поскольку цифры в нем образуют треугольник.
Значение позиционного числа выше это сумма
- ,
куда является основанием указанной системы счисления. Позиционный код функции с одной переменной соответствует двойному коду вида
- ,
куда целое положительное число, количество принятых значений , и определенная функция аргумента .
Добавление позиционных кодов чисел связано с нести перевод в старшую цифру по схеме
- .
Добавление позиционных кодов функций одной переменной также связано с переносом переноса в старшие разряды по схеме:
- .
Здесь одна и та же передача осуществляется одновременно в два высшие цифры.
р-нарный треугольный код
Треугольный код называется R-нет (и обозначается как ), если числа берут их значения из множества
- , куда и .
Например, треугольный код - это троичный код. , если , и четвертичный , если .
За р-нарных треугольных кодов справедливы следующие равенства:
- ,
куда - произвольное число. Существует произвольного целого действительного числа. Особенно, . Также существует любой функции вида . Например, .
Однозначное сложение
в R-нарных треугольных кодах состоит в следующем:
- в данном -цифра определяется сумма цифр, которые добавляются и два носителя , переводится в эту цифру слева, т.е.
- ,
- эта сумма представлена в виде , куда ,
- написано в -цифра сводного кода и перенос из данной цифры переводится в -цифра и - цифра.
Эта процедура описывается (как и для однозначного сложения чисел) таблицей однозначного сложения, где все значения членов и должны присутствовать и все значения переносов, появляющиеся при разложении суммы . Такую таблицу можно синтезировать для
Ниже мы написали таблицу однозначного сложения для :
Smk | ТЗ(Smk) | |||
---|---|---|---|---|
. | . | 0 | . | . |
0 | 0 | 0 | 0 | 0 |
. | . | 0 | . | . |
1 | 1 | 0 | 1 | 0 |
. | . | 0 | . | . |
(-1) | (-1) | 0 | (-1) | 0 |
. | . | 1 | . | . |
2 | (-1) | 1 | (-1) | 1 |
. | . | 1 | . | . |
3 | 0 | 1 | 0 | 1 |
. | . | 1 | . | . |
4 | 1 | 1 | 1 | 1 |
. | . | (-1) | . | . |
(-2) | 1 | (-1) | 1 | (-1) |
. | . | (-1) | . | . |
(-3) | 0 | (-1) | 0 | (-1) |
. | . | (-1) | . | . |
(-4) | (-1) | (-1) | (-1) | (-1) |
Вычитание одной цифры
в R-ных треугольных кодах отличается от однозначного сложения только тем, что в данном -цифровать значение определяется по формуле
- .
Однозначное деление по параметру R
в R-образных треугольных кодах основывается на использовании корреляции:
- ,
из этого следует, что деление каждой цифры причин переводит на две младшие цифры. Следовательно, цифры, полученные в результате этой операции, представляют собой сумму частного от деления этой цифры на R и двух переносов из двух старших цифр. Таким образом, при делении на параметр R
- в данном -цифра определяется следующая сумма
- ,
- эта сумма представлена как , куда ,
- написано в - цифра результирующего кода и перенос из данной цифры переводится в -цифра и -цифра.
Эта процедура описывается таблицей однозначного деления по параметру R, где все значения термов и все значения переносов, появляющиеся при разложении суммы , должен присутствовать. Такую таблицу можно синтезировать для
Ниже в таблице приводится однозначное деление по параметру R для :
Smk | ТЗ(Smk) | |||
---|---|---|---|---|
. | . | 0 | . | . |
0 | 0 | 0 | 0 | 0 |
. | . | 1 | . | . |
1 | 0 | 0 | 1 | 0 |
. | . | (-1) | . | . |
(-1) | 0 | 0 | (-1) | 0 |
. | . | 0 | . | . |
1/3 | 1 | (-1/3) | 0 | 1 |
. | . | 1 | . | . |
2/3 | (-1) | 1/3 | 1 | (-1) |
. | . | 1 | . | . |
4/3 | 1 | (-1/3) | 1 | 1 |
. | . | 2 | . | . |
5/3 | (-1) | 1/3 | 2 | (-1) |
. | . | 0 | . | . |
(-1/3) | (-1) | 1/3 | 0 | (-1) |
. | . | (-1) | . | . |
(-2/3) | 1 | (-1/3) | (-1) | 1 |
. | . | (-1) | . | . |
(-4/3) | (-1) | 1/3 | (-1) | (-1) |
. | . | (-2) | . | . |
(-5/3) | 1 | (-1/3) | (-2) | 1 |
Сложение и вычитание
R-мерных треугольных кодов состоит (как и в позиционных кодах чисел) из последовательно выполняемых однозначных операций. Помните, что однозначные операции со всеми цифрами каждого столбца выполняются одновременно.
Умножение
R-нарных треугольных кодов. Умножение кода к -цифра другого кода состоит в -сдвиг кода , т.е. сдвигает k столбцов влево и m строк вверх. Умножение кодов и состоит в последующих -сдвиги кода и добавление сдвинутого кода с деталью-продуктом (как в позиционных кодах чисел).
Вывод
R-нарных треугольных кодов. Производная функции , определенный выше, является
- .
Таким образом, вывод треугольных кодов функции состоит в определении треугольного кода частной производной и его умножение на известный треугольный код производной . Определение треугольного кода частной производной основан на соотношении
- .
Метод вывода состоит из организации переносов из mk-разряда в (m + 1, k) -цифру и в (m-1, k) -цифру, и их суммирование в данной цифре выполняется так же, как и в однозначной. сложение цифр.
Кодирование и декодирование
R-нарных треугольных кодов. Функция, представленная серией вида
- ,
с целыми коэффициентами , могут быть представлены R-образными треугольными кодами, для этих коэффициентов и функций имеют R-ные треугольные коды (о чем упоминалось в начале раздела). С другой стороны, R-мерный треугольный код может быть представлен упомянутой серией, так как любой член в позиционном разложении функции (соответствующей этому коду) может быть представлен аналогичным рядом.
Усечение
R-нарных треугольных кодов. Так называется операция по уменьшению количества «ненулевых» столбцов. Необходимость усечения возникает при появлении переносов за пределы цифровой сети. Усечение заключается в делении на параметр R. Все коэффициенты ряда, представленного кодом, уменьшаются в R раз, а дробные части этих коэффициентов отбрасываются. Также отбрасывается первый член ряда. Такое сокращение допустимо, если известно, что ряды функций сходятся. Усечение состоит в последовательно выполняемых одноразрядных операциях деления по параметру R. Однозначные операции над всеми цифрами строки выполняются одновременно, а переносы из нижней строки отбрасываются.
Масштаб
R-мерный треугольный код сопровождается масштабным коэффициентом M, аналогичным экспоненте для числа с плавающей запятой. Коэффициент M позволяет отображать все коэффициенты кодированного ряда в виде целых чисел. Фактор M умножается на R при усечении кода. Чтобы дополнительные коэффициенты M были выровнены, для этого необходимо усечь один из добавленных кодов. Для умножения множители M также умножаются.
Позиционный код для функций многих переменных [4]
Позиционный код функции двух переменных изображен на рисунке 1. Он соответствует «тройной» сумме вида: ,
куда - целое положительное число, количество значений числа , и - определенные функции аргументов соответственно. На рисунке 1 узлы соответствуют цифрам , а в кружках значения индексов соответствующей цифры. Позиционный код функции двух переменных называется пирамидальным. Позиционный код называется R-nary (и обозначается как ), если числа принять значения из набора . При добавлении кодов перенос продолжается до четырех цифр и, следовательно, .
Позиционный код функции от нескольких переменных соответствует сумме вида
- ,
куда целое положительное число, количество значений цифры , и определенные функции аргументов . Позиционный код функции нескольких переменных называется «гиперпирамидальным». На рисунке 2 изображен, например, позиционный гиперпирамидальный код функции трех переменных. На нем узлы соответствуют цифрам , а кружки содержат значения индексов соответствующей цифры. Позиционный гиперпирамидальный код называется R-нарным (и обозначается как ), если числа принять значения из набора . При добавлении кодов перенос распространяется на а-мерный куб, содержащий цифры, а значит .
Смотрите также
Рекомендации
- ^ а б c Малиновский, Б. (1995 (см. также здесь http://www.sigcis.org/files/SIGCISMC2010_001.pdf и английскую версию здесь)). История компьютерных технологий в их лицах (на русском). Киев: Фирма "КИТ". ISBN 5-7707-6131-8. Проверить значения даты в:
| год =
(помощь) - ^ а б c Хмельник, С.И. (1966 (http://lib.izdatelstwo.com/Papers2/s7.pdf см. также здесь на русском)). «Кодирование функций». 4. Кибернетика АН СССР. Цитировать журнал требует
| журнал =
(помощь); Проверить значения даты в:| год =
(помощь) - ^ а б c Хмельник, С.И. (2004 (http://lib.izdatelstwo.com/Papers2/s7.pdf см. также здесь на русском)). Компьютерная арифметика функций. Алгоритмы и аппаратное обеспечение. Израиль: «Математика в компьютерах». ISBN 978-0-557-07520-1. Проверить значения даты в:
| год =
(помощь) - ^ Хмельник, С.И. (1970 (http://lib.izdatelstwo.com/Papers2/s17.pdf см. также здесь на русском)). «Несколько типов кодов позиционных функций». 5. Кибернетика АН СССР. Цитировать журнал требует
| журнал =
(помощь); Проверить значения даты в:| год =
(помощь)