Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python
This paper presents the results of the numerical experiment, which aims to clarify the actual performance of arithmetic algorithms implemented in C ++ and Python programming languages using arbitrary precision arithmetic. "Addition machine" has been chosen as a mathematical model for integ...
Збережено в:
Видавець: | Інститут програмних систем НАН України |
---|---|
Дата: | 2018 |
Автор: | |
Формат: | Стаття |
Мова: | Ukrainian |
Опубліковано: |
Інститут програмних систем НАН України
2018
|
Теми: | |
Онлайн доступ: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/177 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Репозиторії
Problems in programmingid |
pp_isofts_kiev_ua-article-177 |
---|---|
record_format |
ojs |
spelling |
pp_isofts_kiev_ua-article-1772024-04-28T13:09:54Z Performance analysis of arithmetic algorithms implemented in C++ and Python programming languages Анализ эффективности реализации арифметических алгоритмов на языках программирования C ++ и Python Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python Novokshonov, A.K. C++; Python; GMP; addition; subtraction; greatest common divisor; exponentiation; Fibonacci numbers UDC 004.021 C++; Python; GMP; сложение; вычитание; наибольший общий делитель; возведение в степень; числа Фибоначчи УДК 004.021 C++; Python; GMP; додавання; віднімання; найбільший спільний дільник; піднесення до степеня; числа Фібоначчі УДК 004.021 This paper presents the results of the numerical experiment, which aims to clarify the actual performance of arithmetic algorithms implemented in C ++ and Python programming languages using arbitrary precision arithmetic. "Addition machine" has been chosen as a mathematical model for integer arithmetic algorithms. "Addition machine" is a mathematical abstraction, introduced by R. Floyd and D. Knuth. The essence of "addition machine" is the following: using only operations of addition, subtraction, comparison, assignment and a limited number of registers it is possible to calculate more complex operations such as finding the residue modulo, multiplication, finding the greatest common divisor, exponentiation modulo with reasonable computational efficiency. One of the features of this implementation is the use of arbitrary precision arithmetic, which may be useful in cryptographic algorithms.Problems in programming 2016; 2-3: 26-31 В данной работе представлены результаты вычислительного эксперимента, целью которого является уточнение реальной производительности арифметических алгоритмов с использованием арифметики произвольной точности при реализации на языках программирования C++ и Python. Как математическая модель для арифметических алгоритмов выбрана целочисленная «складывающая машина». «Складывающая машина» – это математическая абстракция, введённая Р. Флойдом и Д. Кнутом, суть которой заключается в том, что с помощью только операций сложения, вычитания, сравнения, присваивания и ограниченного количества регистров можно с приемлемой вычислительной эффективностью выразить более сложные операции, такие как нахождение остатка по модулю, умножение, нахождение наибольшего общего делителя, возведение в степень по модулю. Особенностью данной реализации является использование арифметики произвольной точности, что может быть полезным для использования в криптографических алгоритмах.Problems in programming 2016; 2-3: 26-31 У даній роботі представлені результати обчислювального експерименту, метою якого є уточнення реальної швидкодії арифметичних алгоритмів з використанням арифметики довільної точності при реалізації на мовах програмування C++ та Python. Як математичну модель для арифметичних алгоритмів обрана цілочисельна «машина, що складає». «Машина, що складає» – це математична абстракція, введена Р. Флойдом та Д. Кнутом, суть якої полягає у тому, що лише за допомогою операцій додавання, віднімання, порівняння, присвоювання та обмеженої кількості регістрів можна з прийнятною обчислювальною ефективністю виразити більш складні операції, такі як знаходження лишку за модулем, множення, знаходження найбільшого спільного дільника, піднесення до степеня за модулем. Особливістю даної реалізації є використання арифметики довільної точності, що може бути корисним для ви-користання у криптографічних алгоритмах.Problems in programming 2016; 2-3: 26-31 Інститут програмних систем НАН України 2018-07-06 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/177 10.15407/pp2016.02-03.026 PROBLEMS IN PROGRAMMING; No 2-3 (2016); 26-31 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2-3 (2016); 26-31 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2-3 (2016); 26-31 1727-4907 10.15407/pp2016.02-03 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/177/172 Copyright (c) 2017 ПРОБЛЕМИ ПРОГРАМУВАННЯ |
institution |
Problems in programming |
baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
datestamp_date |
2024-04-28T13:09:54Z |
collection |
OJS |
language |
Ukrainian |
topic |
C++ Python GMP addition subtraction greatest common divisor exponentiation Fibonacci numbers UDC 004.021 C++ Python GMP сложение вычитание наибольший общий делитель возведение в степень числа Фибоначчи УДК 004.021 C++ Python GMP додавання віднімання найбільший спільний дільник піднесення до степеня числа Фібоначчі УДК 004.021 |
spellingShingle |
C++ Python GMP addition subtraction greatest common divisor exponentiation Fibonacci numbers UDC 004.021 C++ Python GMP сложение вычитание наибольший общий делитель возведение в степень числа Фибоначчи УДК 004.021 C++ Python GMP додавання віднімання найбільший спільний дільник піднесення до степеня числа Фібоначчі УДК 004.021 Novokshonov, A.K. Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
topic_facet |
C++ Python GMP addition subtraction greatest common divisor exponentiation Fibonacci numbers UDC 004.021 C++ Python GMP сложение вычитание наибольший общий делитель возведение в степень числа Фибоначчи УДК 004.021 C++ Python GMP додавання віднімання найбільший спільний дільник піднесення до степеня числа Фібоначчі УДК 004.021 |
format |
Article |
author |
Novokshonov, A.K. |
author_facet |
Novokshonov, A.K. |
author_sort |
Novokshonov, A.K. |
title |
Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
title_short |
Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
title_full |
Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
title_fullStr |
Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
title_full_unstemmed |
Аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування C++ та Python |
title_sort |
аналіз ефективності реалізації арифметичних алгоритмів на мовах програмування c++ та python |
title_alt |
Performance analysis of arithmetic algorithms implemented in C++ and Python programming languages Анализ эффективности реализации арифметических алгоритмов на языках программирования C ++ и Python |
description |
This paper presents the results of the numerical experiment, which aims to clarify the actual performance of arithmetic algorithms implemented in C ++ and Python programming languages using arbitrary precision arithmetic. "Addition machine" has been chosen as a mathematical model for integer arithmetic algorithms. "Addition machine" is a mathematical abstraction, introduced by R. Floyd and D. Knuth. The essence of "addition machine" is the following: using only operations of addition, subtraction, comparison, assignment and a limited number of registers it is possible to calculate more complex operations such as finding the residue modulo, multiplication, finding the greatest common divisor, exponentiation modulo with reasonable computational efficiency. One of the features of this implementation is the use of arbitrary precision arithmetic, which may be useful in cryptographic algorithms.Problems in programming 2016; 2-3: 26-31 |
publisher |
Інститут програмних систем НАН України |
publishDate |
2018 |
url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/177 |
work_keys_str_mv |
AT novokshonovak performanceanalysisofarithmeticalgorithmsimplementedincandpythonprogramminglanguages AT novokshonovak analizéffektivnostirealizaciiarifmetičeskihalgoritmovnaâzykahprogrammirovaniâcipython AT novokshonovak analízefektivnostírealízacííarifmetičnihalgoritmívnamovahprogramuvannâctapython |
first_indexed |
2024-09-16T04:08:12Z |
last_indexed |
2024-09-16T04:08:12Z |
_version_ |
1810324199285194752 |