|
3 / 3 / 4
Регистрация: 23.06.2014
Сообщений: 126
|
|||||||||||
If или switch().case. Что быстрее07.07.2014, 10:22. Показов 24639. Ответов 27
Метки нет (Все метки)
Есть два кода. Первый:
0
|
|||||||||||
| 07.07.2014, 10:22 | |
|
Ответы с готовыми решениями:
27
case outside of switch ? Что за ошибка? Что делают операторы switch/case |
|
|
|
| 07.07.2014, 19:15 | |
|
Это понятно, на примере, который был дан выше разницы никакой.
0
|
|
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,874
|
|||||||
| 07.07.2014, 19:20 | |||||||
|
лень придумывать примеры
вот кусок дезасемблированой реальной программы
кучей сравнений и не пахнет ![]() Добавлено через 2 минуты в первом случае при a=2 отработают два if так что пример ТС некорректен для исследования
1
|
|||||||
|
|
|||
| 07.07.2014, 19:25 | |||
|
Не по теме: Можно смотреть только листинг на asm, остальное некорректно
0
|
|||
| 07.07.2014, 19:29 | |
|
0
|
|
|
704 / 109 / 21
Регистрация: 22.06.2014
Сообщений: 241
|
|||||||||||
| 07.07.2014, 19:43 | |||||||||||
|
Вот так выглядит код в дизассемблере для первого случая:
Добавлено через 9 минут P.S. С другой стороны в блоках if сравнение значений происходит с ячейкой памяти ОЗУ, а в switch'e сравнения значений происходят с регистром EAX, что по теории быстрее на несколько тактов.
0
|
|||||||||||
|
Модератор
8982 / 6749 / 921
Регистрация: 14.02.2011
Сообщений: 23,874
|
||||||||
| 07.07.2014, 20:04 | ||||||||
|
по приведенным листингам могу сделать вывод что оптимизация на минимуме или вообще отсутствует ибо при зверской оптимизации компилятор выбросил бы всю эту лабуду бессмысленную(результаты никуда не идут и нигде не используются ) и оставил бы что то типа
![]() Добавлено через 1 минуту
0
|
||||||||
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||
| 07.07.2014, 20:28 | ||
Другое дело что на je встроенный в процессор хрустальный шар часто ошибается с предсказанием направления перехода и половина выполненных не по порядку вычислений идет в помойку. Поэтому je действительно может знатно подгадить производительности.
0
|
||
| 07.07.2014, 20:28 | |
|
Помогаю со студенческими работами здесь
28
Оптимальная конструкция switch-case-while / while-switch-case Статический хеш или switch-case/if-else для выбора
Что быстрее switch(enum) или if else?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|