Какой бейсик быстрее04.06.2014, 15:44. Показов 3518. Ответов 39
Метки нет (Все метки)
У меня на компьютере есть 4 бейсика:
QBasic 1.1, 4.5, 7.1 и Turbo Basic 1.0 Всем им была дана одна и та же программа с целью выяснить кто быстрее считает. Задача была такая суммировать 100 миллионов слагаемых гармонического ряда. Если принять скорость счёта QB1.1 за 100%, то результат таков: QB1.1 = 100% TB1.0 = 340% (Turbo Basic) QB4.5 = 460% QB7.1 = 780% Удачи вам!
0
|
|
| 04.06.2014, 15:44 | |
|
Ответы с готовыми решениями:
39
Какой бейсик редактирует файлы формата BLD
Какой Бейсик лучше? |
|
1045 / 315 / 74
Регистрация: 13.07.2013
Сообщений: 1,270
|
||
| 05.06.2014, 23:13 | ||
|
0
|
||
|
Кормпилятор
|
||
| 05.06.2014, 23:21 | ||
Ну ok, сколько у тебя физических ядер? Если 8(AMD?) тогда да, всё так и будет, если же 4, то в биосе вырубаешь HT и логич. деление исчезнет, тогда будет побыстрее.
2
|
||
|
572 / 141 / 37
Регистрация: 12.03.2012
Сообщений: 403
|
||
| 06.06.2014, 00:29 | ||
|
1. Вы Basic запускаете в среде редактора? 2. Если нет, то как вы компилируете 1-й Basic. 3. Считаю, что говорить о скорости исполнения можно только для автономного exe-шника.
0
|
||
|
Кормпилятор
|
|||||
| 06.06.2014, 03:55 | |||||
Ещё скорее всего в турбо бейсике он не лазал по меню компилятора, там тоже можно повыключать разного добра.
Змейки и тетрисы увы не кормят Vodav, конечно, поспорит, ну а глобально, имховсё именно так.
навязать им задачу, они её решат. А один кодер не сможет решить, не потому что он дебил или что-то такое, а просто из-за того, что общая комплексная сложность проги превышает возможности его мозга по анализу, прогнозированию и выбору грамотного направления разработки на всех этапах. Избранные Лю Кенги конечно есть, но мало их, совсем мало...
1
|
|||||
|
Модератор
|
||
| 11.06.2014, 19:04 | ||
|
0
|
||
|
Модератор
|
||||||
| 12.06.2014, 10:46 | ||||||
|
Не поленился - сделал тест с использованием для вычисления нескольких потоков.Код Visual Basic
1
|
||||||
|
|
||||||
| 12.06.2014, 12:44 | ||||||
|
Тоже самое на PureBasic.
0
|
||||||
|
Модератор
|
|
| 12.06.2014, 13:16 | |
|
locm, во-первых, тест не такой и некорректный. У меня потоки стартуют все одновременно, у тебя уже потоки уже работают, только потом начинает замеряться время. Грубо говоря потоки уже посчитали "половину", а ты еще даже не запустил замер времени.
во-вторых, у тебя неправильно считается значение.
0
|
|
|
|
|||||||||||||
| 12.06.2014, 13:30 | |||||||||||||
|
В коде исходного варианта
0
|
|||||||||||||
|
Модератор
|
|||
| 12.06.2014, 13:44 | |||
|
На VB6 получился более компактный и быстрый код, листинги прилагаю ниже, также комментарии написал для PB.
0
|
|||
|
|
||||||||
| 12.06.2014, 14:30 | ||||||||
0
|
||||||||
|
Модератор
|
||||
| 12.06.2014, 14:38 | ||||
|
Ассемблерный листинг показывает, что VB6 скомпилировал более оптимальный код.
1
|
||||
|
Модератор
|
||||||
| 12.06.2014, 15:31 | ||||||
|
locm, вот аналог твоего кода на VB6.
Во-первых оно показывается неправильно - это не время выполнения вычислений. Во-вторых код на VB6 опять обогнал PB, что по "неправильному" времени, что по "правильному".
1
|
||||||
|
|
|
| 12.06.2014, 21:44 | |
|
Очередной код написан 1:1, это одинаковые кнопки, окна, процедуры. Все настройки по умолчанию.
Результат работы: Тест в очередной раз показывает -это МИФ, что VB6 работает так же быстро, как и PureBasic. И не надо ни каких потоков, в VB6 нет встроенной их поддержки, как и встроенного ассемблера, а в PureBasic есть и то и другое. Последнее обновление на VB6 было в лохматых 90-х, а на PureBasic на прошлой неделе. VB6 однозначно динозавр! Или может у меня комп особенный, не любит VB Проверяйте, исходники, готовые программы:
0
|
|
|
Модератор
|
|||
| 12.06.2014, 22:12 | |||
|
Pro_grammer, ты в курсе что в VB6 есть опции оптимизации? Что ты дал - это программа скомпилированная без единой опции оптимизации с проверкой аргументов и т.п.
1
|
|||
|
|
|||||
| 12.06.2014, 23:49 | |||||
|
1
|
|||||
|
Модератор
|
|||||
| 13.06.2014, 00:00 | |||||
|
2
|
|||||
|
Модератор
|
|
| 13.06.2014, 00:18 | |
|
Кстати, я сейчас работаю над модулем который может инициализировать контекст потока (я его изначально для глобального хука разрабатывал), поэтому появляется возможность писать многопоточные приложения и отлаживать их в IDE.
1
|
|
|
|
|||
| 13.06.2014, 10:12 | |||
|
И их можно писать непосредственно в коде, а не в виде оп. кодов как это делают в VB. Макросы ФАСМа предоставляют довольно интересные возможности модификации кода во время компиляции. Например, можно ими зашифровать все текстовые строки и они станут не читаемыми в исполняемом файле. А можно подменять некоторые инструкции в процессе компиляции. Например таким образом удалось успешно исправить соглашение вызова с stdcall на thiscall. Причем в исполняемом файле это выглядит не как костыль, а реально как вызов thiscall, т. е. никаких следов (лишний инструкций) от stdcall не осталось. VB6 поддерживает что-то подобное? Добавлено через 5 минут В PB можно создать переменную, массив, экземпляр структуры и т. д. в контексте текущего потока. http://purebasic.com/documenta... eaded.html В VB как я понимаю такого нет. И не факт что его отладчик сможет стабильно работать с многопоточным приложением.
1
|
|||
|
Модератор
|
||||
| 13.06.2014, 11:03 | ||||
|
И вообще это не относится все к теме, т.к. у нас вопрос о скорости работы.
1
|
||||
| 13.06.2014, 11:03 | |
|
Помогаю со студенческими работами здесь
40
Какой быстрее Какой процессор быстрее?
Какой метод быстрее Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет
значение производной при заданном х
Логарифм записывается как: (x-2)log(x^2+2) -. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|