256 х 256 помогите разобраться - крыша едет!

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

256 х 256 помогите разобраться - крыша едет!

Сообщение Dimon111 » 31.01.2008 (Чт) 19:25

Чего я не понимаю:

Dim DAC As Single

DAC = 65536 - Проходит.
DAC = 256 * 256 - Пишет OverFlow.

Не прокатывает ни Single, ни Double ни Integer.

Не дайте сойти с ума - помогите!

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 31.01.2008 (Чт) 19:44

Dimon111
Type-Declaration Character спасёт тебя от желтого дома.
Статическая конвертация типа спасёт тебя от от него же.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

Сообщение Dimon111 » 31.01.2008 (Чт) 20:11

И правда.
K = 256
DAC = 256 * K прокатывает

Почему я так и не понял. Наверно это также сложно, как вычислить квадратуру круга.

HiSER
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 88
Зарегистрирован: 04.07.2007 (Ср) 18:17

Сообщение HiSER » 31.01.2008 (Чт) 20:35

DAC = 256# * 256#

Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

Сообщение Dimon111 » 31.01.2008 (Чт) 20:49

Так еще изящнее. Поезд в Кащенко откладывается. Спасибо.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 31.01.2008 (Чт) 20:58

Только, не самый удачный пример, по моему, приведён HiSer-ом. Зачем вообще тип Single (или Double, что там у тебя?) здесь. Только из-за границ?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

Сообщение Dimon111 » 31.01.2008 (Чт) 21:56

Диапазон заботы АЦП до 40001. Наверное Integer подойдет, поскольку знак передается отдельно.

TEST_ACCOUNT_2
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 24.07.2007 (Вт) 16:25

Сообщение TEST_ACCOUNT_2 » 31.01.2008 (Чт) 22:20

Dimon111
АЦП? Если это аналого-цифровой преобразователь, - сказанное тобой - огромнейшая глупость.

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Сообщение Nord777 » 31.01.2008 (Чт) 22:40

Dimon111
АЦП? Если это аналого-цифровой преобразователь, - сказанное тобой - огромнейшая глупость.
можешь обосновать в чем именно глупость?
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

Сообщение Dimon111 » 01.02.2008 (Пт) 10:50

Коллега заблуждается. Я бы не судил столь категорично. АЦП бывают разные. В данном случае по COM - порту передается (в т. ч.) 2 байта от АЦП. Диапазон измерений 0 - 40000. 40001 считантся переполнением. Бит полярности (внимание) передаеттся отдельно.

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Сообщение Nord777 » 01.02.2008 (Пт) 17:49

В данном случае по COM - порту передается (в т. ч.) 2 байта от АЦП. Диапазон измерений 0 - 40000. 40001 считантся переполнением. Бит полярности (внимание) передаеттся отдельно.
2 байта - 65535 (если знаковый бит передается отдельно) или 32767. Откуда 40000 ?
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

Dimon111
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 154
Зарегистрирован: 28.01.2008 (Пн) 22:11

Сообщение Dimon111 » 01.02.2008 (Пт) 19:55

Я говорил о пределе отсчета АЦП, а не о колличестве возможных комбинаций.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 108

    TopList