persicum Лично мне, например не по себе, если столь простая вещь как генератор поролей будет весить 300кБ. А вобще, тебе непонять дзена программирования
Ну в третьем пункте я определенно преуспел - кодировщик файлов RSA, Reed-Solomon 16- и 32-бит, LDPC в различных полях рядом тут лежит недалеко =))) Только вот восторженного писка до сих пор не слышно...
Это имеются в виду типы BigInteger и BigDecimal языка JAVA? Ну посмотри тогда МастерШифрованияRSA_1.27, он на порядок медленнее чем моя прогга =))) Да и вообще не смеши меня или объясни подробнее что хотел сказать... А в ASM как раз с длинными числами идеально работать типа add ... adc adc adc И с делением все ништяк xor edx,edx div div div остаток в edx становится старшим разрядом для последующей операции div Ну и вообще там хорошо продумано все для длинных чисел, как ни парадоксально это звучит.
persicum Это я не совсем понимаю, что ты хочешь сказать... Спрашиваешь, зачем писать на асме и тут же приводишь в пример свои проги на асме... ПС. Кстати у тебя RSA реализовано на асме полностью, без CryptoAPI всяких? Скинь в личку/файлообменник исходник (хотя бы то, что касается RSA), если не секрет, конечно
Там машинногенерированный исходник который компилится в 500 кило кода без jmp и loop, т.е. полностью разруленного. Еле в кеш влезает. Для ЖоПоКода слишком тяжеловесно будет =)))
а какое твое дело? у меня, например, база экономистов архивируется программой на ассемблере потому, что мне ее написать оказалось проще чем пакетный файл. и меня это абсолютно не смущает - главное, что оно работает. плюс на билдере сэкономил. а если тебе трудно писать на ассемблере, то это не причина, чтобы к другим цепляться. у тех, кто часто пишет на ассемблере, есть масса методов по ускорению написания программ - всякие IDE и утилиты, о которых можно узнать на разных форумах, например, на этом. вобщем, если вопрос по делу - задавай, а с философоскими проблемами - как минимум в хип, а с наездами давай наверное завязывай.
Цитата из классика =))): " Зачастую более, чем 99% времени процессора тратится на внутренний цикл программы. В этом случае вам нужно только оптимизировать этот цикл и оставить все остальное на языке высокого уровня. Некоторые асм-программисты тратят огромное количество энергии на оптимизирование не тех частей своей программы, единственным значительным результатом чего становится то, что программу становится труднее отлаживать и распространять! Отладка ассемблерного кода может оказаться довольно трудоемкой и неприятной, как вы, возможно, уже заметили. Я рекомендую вам сначала написать то, что вы хотите оптимизировать как подпрограмму на языке высокого уровня. Затем напишите тестовую программу, в которой вы будете отлаживать подпрограмму. Убедитесь, что тестовая программа удовлетворяет всем условиям ветвления и выравнивания. Затем переведите код на язык ассемблера. " Выходит, что классик хорошо знал это дело, но не любил лишний раз ассемблировать без особого на то резона, мда...
persicum мы говорим о разных вещах какова цель вашей дискуссии? обсудить алгоритм или язык реализации? если язык, то о существовании языков высокого уровня и их реальных достоинствах и недостатках по сравнению с ассемблером большинству участников данного форума известно и без вашего классика, но поскольку это форум по программированию на ассемблере, то вопрос "почему написано на ассемблере" здесь звучит неуместно. а также, если бы вы внимательно читали вашего классика, то обратили бы внимание, что там написано: "Некоторые асм-программисты...", т.е. основная масса асм-программистов этой фигнёй не страдает, а также классик в конце правильно заметил: "Затем переведите код на язык ассемблера", ну, а если человек способен сразу написать на ассемблере, то зачем же ему проходить столь сложный путь?