|
|
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Немогу ничего найти про битовые операции в VB (всякие тим сдвиги наложения масок). Не подскажите где можно про них почитать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 10:27 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Может тебе поможет Logical/Bitwise Operators ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 10:57 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
спасибо, конечно. Но я пытаюсь найти операцию аналогичной СИ-шной "<<" или ">>". (Обычный побитовый сдвиг). Немогу найти ничего подобного :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 11:05 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
ситуация усугубляется тем, что я использую VB-6. В net-е это опареции обчного сдвига как в Си >> и <<. А в шестом ничего подобного нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 11:46 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Предлагают такое решение: Код: plaintext 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. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 13:30 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Спасибо огромное!!! Очень выручили!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2003, 14:03 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Продолжу вопрос: Пример, конечно, замечательный. Но это называется "вывернуться". Т.е. в то время, как в C++ или в VB.NET операция побитового сдвига на одну позицию выполняется намного быстрее, чем умножение или деление на два, в данном примере такой побитовый сдвиг в критических местах программы может заметно замедлить её скорость выполнения. Проблема в том, что я пишу программу (с радостью бы написал на C, но мне её просили в Excel'е выполнить), в которой присутствует перебор неимоверного количества комбинаций с её сложным анализом. На небольшом количестве исходных данных она перебирает 10-15 минут. Хотелось бы оптимизировать работу программы, используя вместо булевского массива только одну переменную, и применить в ней побитовый сдвиг, чтобы найти нужное в ней значение. вопрос: всё-таки в VB есть побитовый сдвиг? или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2009, 20:18 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
вернее даже так: мне надо узнать значение i-го бита в переменной. Вот)) как это можно сделать быстрым способом? в C я бы применил просто побитовый сдвиг к числу 1, и выполнил бы конъюнкцию (побитовую &) с получившимся числом. В противном случае мне придётся использовать операцию возведения в степень :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2009, 20:21 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, можешь верить, а можешь не верить и отладчиком/дизассемблером проверить, но у VB6 и VC6 одна "неонка внутре", в смысле бэк-энда компилятора. Целочисленное умножение на константу-степень двойки транслируется (в native code) в операции сдвига. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2009, 20:25 |
|
||
|
Где почтить по битовые операции в VB
|
|||
|---|---|---|---|
|
#18+
Charles Weylandвернее даже так: мне надо узнать значение i-го бита в переменной. Вот)) как это можно сделать быстрым способом? в C я бы применил просто побитовый сдвиг к числу 1, и выполнил бы конъюнкцию (побитовую &) с получившимся числом. В противном случае мне придётся использовать операцию возведения в степень :-(Массив из степеней двоек и конъюнкция. Можно отполировать в релизном коде опцией отмены проверки выхода индекса за границу массива. Только это такие блохи, что, ловя их, много вряд ли выиграешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2009, 20:40 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=32277874&tid=2161186]: |
0ms |
get settings: |
6ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 370ms |

| 0 / 0 |
