ProGrammer

Сайт о программировании, математике и моделировании

Лента RSS

  • Главная
  • О сайте

Вычисление остатка в длинной арифметике

3 Декабрь

Опубликовал root в Информатика и программирование

Нет комментариев

Итак, теперь умеем умножать числа, но в алгоритмах ГОСТ Р 34.10-94 требу­ется уметь вычислять произведение двух чисел по модулю простого числа. Для его реализации необходимо произвести вычисление остатка от деления 2n-значного числа на n-значное. Эта операция называется редукцией по модулю. Вы­полнять ее можно двумя способами. Первый состоит в том, что необходимо выполнить процедуру деления и взять остаток. Второй метод носит имя П. Монтгомери, который предложил модифицировать саму операцию редук­ции. Что из этого получилось, рассмотрим далее. Читать дальше >

длинная арифметика

Возведение в квадрат длинного числа

3 Декабрь

Опубликовал root в Информатика и программирование

1 комментарий

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

  • умножать операнд на себя самого, используя при этом один из приведенных выше алгоритмов умножения,
  • использовать модификацию метода Карацубы,
  • воспользоваться методом «треугольника». Читать дальше >
длинная арифметика

Умножение длинных чисел

3 Декабрь

Опубликовал root в Алгоритмы

1 комментарий

Умножение в столбик.

С умножением дело обстоит не так просто, как с операциями сложения и вычитания. Дело в том, что известный нам со школы алгоритм умножения “в столбик” не самый быстрый. Вот он.

Алгоритм 1.3. Умножение «в столбик» длинных чисел С = А*В Читать дальше >

алгоритм, длинная арифметика

Длинная арифметика. Сложение и вычитание

3 Декабрь

Опубликовал root в Информатика и программирование

Нет комментариев

Складывать и вычитать учат с первого класса школы. И в отличие от умножения ничего более эффективного, чем “первоклассный” школьный алгоритм “в столбик” и не надо придумывать.. Итак, ниже приведен алгоритм вычисления суммы С =А + В чисел А и В длины n цифр. При этом помимо n — значного результата С возвращается также бит переноса из старших разрядов d. Читать дальше >

длинная арифметика

Внутреннее представление длинных чисел в памяти компьютера

3 Декабрь

Опубликовал root в Информатика и программирование

Нет комментариев

Прежде всего, введем обозначение. Обозначим через m длину в байтах машинного слова, которое используется в качестве минимального элемента памяти. Конкретный выбор зависит от того, какой максимальный длинны элемент данных можно умножать без потери разрядов. Для процессоров Intel начиная с модели 80386 – m=32. Для процессора Digital Alpha можно использовать m=64. Читать дальше >

длинная арифметика
работа с длинной арифметикой

Длинная арифметика

3 Декабрь

Опубликовал root в Информатика и программирование

Нет комментариев

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

Числа, для представления которых в стандартных компьютерных типах данных не хватает количества двоичных разрядов, называются «длинными». Реализация арифметических операций над такими «длинными» числами получила название «длинной арифметики». Читать дальше >

длинная арифметика, криптография

Умножение двумерного массива на число

3 Декабрь

Опубликовал root в Задачи и решения

1 комментарий

Задача:

Умножить двумерный массив на число

Код программы на Visual Basic Читать дальше >

Visual Basic, массив

Заполнение матрицы элементами, окаймляющими элемент Akl, определенным образом

3 Декабрь

Опубликовал root в Задачи и решения

Нет комментариев

Постановка задачи:

Матрицу А(m, n) заполнить следующим образом. Для заданных  k и l элементу akl присвоить значение 1; элементам, окаймляющим его (соседним с ним по вертикали, горизонтали и диагоналям) – значение 2; элементам следующего окаймления – значение 3 и так далее до заполнения всей матрицы. Читать дальше >

листинг, массив, С++

Нахождение наибольшего общего делителя двух натуральных чисел

3 Декабрь

Опубликовал root в Задачи и решения

1 комментарий

Постановка задачи:

Найти наибольший общий делитель (НОД) двух введенных натуральных чисел, используя алгоритм Евклида (алгоритм Евклида: вычитаем из  большего меньшее до тех пор, пока они не сравняются, полученное в результате число и есть НОД).

Решение:

Наибольшим общим делителем (НОД) двух целых чисел называется такое наибольшее по модулю число, которое делит эти два числа. Так как  натуральные числа это положительные целые числа, то при вводе двух чисел а и b должно проверяться условие, что они больше нуля. Читать дальше >

алгоритм, алгоритм Эвклида, листинг, наибольший общий делитель, С++

Очереди и стеки

3 Декабрь

Опубликовал root в Информатика и программирование

1 комментарий

Стек – упорядоченный список, в котором добавление и удаление элементов всегда происходит на одном конце списка. Работает по принципу: Первый вошел -> последний вышел. Добавление элемента в стек называется проталкиванием элемента, а удаление – выталкиванием. Объявить стеки: Читать дальше >

Visual Basic, листинг, массив, очередь, стек
« First...«89101112»...Last »
    • Недавние комментарии
    • Популярные записи
    • Архивы
    • Метки
    • Категории
    • Моделирование процессов и систем (48)
      • Модели и программы в образовании (2)
      • Моделирование фильтров (14)
      • Многоагентное моделирование (16)
      • Моделирование в области информационной безопасности (16)
    • Программные продукты и пакеты (20)
      • Операционные системы (1)
      • Обучающие программы (1)
      • Поисковые машины и информационно-справочные системы (1)
      • Математические пакеты (2)
      • Программы автоматизации (2)
      • Инструменты разработки многоагентных систем (4)
      • Описание языков программирования (7)
    • Литература (7)
    • Тестирование программ (11)
    • Математика (20)
    • Алгоритмы (23)
    • Информатика и программирование (51)
      • Листинги (11)
      • Задачи и решения (22)
    РО-алгоритм Полларда С++ агенты алгоритм алгоритм Эвклида ассемблер аудит длинная арифметика защита информации информационная безопасность информационная система корпоративная сеть криптография листинг массив матрица метод Брента метод Ферма многоагентные системы мониторинг наибольший общий делитель программирование программная модель программное обеспечение расчеты решето Эрастофена сложность алгоритма тест Рабина-Миллера файлы факторизация фильтр Чебышева фильтрация цифровые фильтры эксперимент язык моделирования .NET Framework Borland C++Builder C++ Csharp Delphi Java MathCAD Microsoft SQL Server 2005 Pascal Visual Basic
    • Февраль 2013 (4)
    • Январь 2013 (10)
    • Декабрь 2012 (12)
    • Ноябрь 2012 (9)
    • Сентябрь 2012 (1)
    • Август 2012 (9)
    • Июль 2012 (7)
    • Июнь 2012 (13)
    • Январь 2012 (2)
    • Июнь 2011 (1)
    • Апрель 2011 (3)
    • Март 2011 (3)
    • Февраль 2011 (4)
    • Январь 2011 (3)
    • Декабрь 2010 (56)
    • Разработка модели нарушения физической целостности информации (20)
    • Простые числа в криптографии (16)
    • Фильтры Чебышева первого рода (8)
    • Решений краевой задачи. Методом стрельбы (7)
    • Программа, реализующая модулярное умножение (4)
    • Решето Эрастофена (3)
    • Выбор среды программирования для вычислений с большими числами (3)
    • Возведение в степень в длинной арифметике (3)
    • Разработка языка взаимодействия агентов МАС. Общие сведения о языке взаимодействия агентов (2)
    • Немного о защите информации (2)
    • Анализ существующих средств создания многоагентных систем (МАС) (2)
    • Анализ языков взаимодействия агентов в МАС (2)
    • Илья: Хорошие статьи! Однако, то ли невнимательность, то ли еще что - присутствую грамматические ошибки. П...
    • Can-: Современные профессии становятся все более интеллектоёмкими, требующими развитого логического мышлен...
    • Вася: Эта функция позволяет сделать контакт уникальным, т.е добавить избранному контакту определенную мело...
    • Lena: Отличная статья посвященная проблемам редактирования дизайн проектов домов, я хочу предложить програ...
    • Александр: возможно ли получить ссылку на скачивание этой программы программы??...
    • root: Да целью работы явялялось разработка системы способной работать с средой .Net и использующей в себе ...
    • Антоха: Несмотря на предложенную градацию (примем ее только к сведению) и принцип описания семантических свя...
    • Wixkeedd: ищу работу, если кому-либо нужно написать программу на C# или VB.Net обращайтесь...
    • Игорь: Интересный блог ! Вы разрешите разместить некоторые ваши статьи на моём блоге с указанием ссылки и...
    • RNick: Теория представления знаний с помощью фреймов, развиваемая М.Минским, претендует на объяснение ряда ...
  • Даты публикаций

    Ноябрь 2013
    Пн Вт Ср Чт Пт Сб Вс
    « Фев    
      1 2 3
    4 5 6 7 8 9 10
    11 12 13 14 15 16 17
    18 19 20 21 22 23 24
    25 26 27 28 29 30  
  • Зайти






    • Забыли пароль?
  • Свежие записи

    • Задача про два отрезка на прямой и их общие точки
    • Язык многоагентного моделирования и безопасность
    • Актуальность применения «длинной» арифметики
    • Исследование зависимости времени выполнения программы от количества цифр в числе
    • Простые числа в криптографии
    • Тестирование разработанного языка общения агентов. Часть 2 – Попытка взлома пароля путем перебора
    • Описание лабораторного практикума по длинной арифметике
    • Процесс реализации ЭЦП
    • Программы автоматизации бизнес-процессов
    • Что такое язык ассемблера?
    • Бухгалтерское программное обеспечение
    • Китайская теорема об остатках
    • Что такое алгоритм?
    • Вычисление длины окружности и площади круга одного и того же радиуса R
    • Язык Ассемблер
    • Многоагентные системы
    • Многоагентные системы для обеспечения аудита и защиты СУБД
    • Программный комплекс по проведению мониторинга и аудита безопасности
    • Программный комплекс по мониторингу и аудиту безопасности. Описание
    • Поисковые системы — проводник среди ресурсов сети Интернет
    • Программы для проектирования дизайна и домов
    • Формальная модель злоумышленника
    • Интерактивные образовательные программы как инструмент самообразования
    • Голосовые звонки и Android
    • Проблемы сессии: заказать или нет…
© 2010 ProGrammer
Лента RSS Наверх