Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
HELP Вопрос по синтаксису.
555serg Дата: Вт, 07.06.2016, 16:03  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Пытаюсь разобраться
Сообщений: 41
Репутация: 0   ±
Замечания:   ±
На сайте с 12.12.2011

Статус: Offline

Доброго дня всем форумчанам. Думаю здесь можно задать этот вопрос.
Столкнулся с необходимостью применения операции побитового сдвига. Раньше применял -
все получалось, но не могу найти, как для образца эту прогу. 
В общем необходимо оператором " BITWISE SHIFT LEFT << "  выполнить сдвиг байтового
значения переменной на определенное число бит.
Пишу в Протоне :
****************************
****************************
 Dim new_r_temp_L As Byte     
 Dim new_r_temp_H As Byte
****************************
****************************    
 new_r_temp_H << 4
 new_r_temp_L >> 4

Сохраняю, компилирую - две ошибки
Пишет что:
assignment operator " = " missing
указывает номера строк где у меня стоят эти два оператора сдвига
Это переводится как:
Оператор присваивания "=" отсутствует
Может кто сталкивался с подобным, уже все перепробовал, что же не так?
Заранее всем спасибо за помощь.
ЯНДЕКС Дата: 07.06.2016
Matrix252005 Дата: Вт, 07.06.2016, 16:41  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 636
Репутация: 43   ±
Замечания:   ±
На сайте с 12.10.2007

Статус: Offline

Приятного времени суток!!!

555serg, правильно он Вам пишет... Должно быть так:

Dim Old_r_temp_L As Byte     
Dim Old_r_temp_H As Byte
Dim new_r_temp_L As Byte     
 Dim new_r_temp_H As Byte

Old_r_temp_H  = new_r_temp_H  << 4
Old_r_temp_L = new_r_temp_L >> 4

или

new_r_temp_H = new_r_temp_H << 4
new_r_temp_L = new_r_temp_L >> 4

Все зависит от того, что Вам нужно...


THE TRUTH IS OUT THERE.

С уважением, Николай.
555serg Дата: Вт, 07.06.2016, 18:45  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Пытаюсь разобраться
Сообщений: 41
Репутация: 0   ±
Замечания:   ±
На сайте с 12.12.2011

Статус: Offline

Спасибо Matrix, сейчас буду пробовать, сразу же отпишусь!
Еще рас спасибо огромное !!! Помогло, сохранилось с необходимым сдвигом в ту же
самую переменную! Смотрел и помощь, которая в самом протоне - help, и там не было
необходимой правильной информации. Видно разные версии Протона, и этим все
объясняется. Фу-у-у-ух ну наконец то разобрался с Вашей помощью.

Сообщение отредактировал 555serg - Вт, 07.06.2016, 18:55
ADMIN Дата: Ср, 08.06.2016, 04:22  |                                                                                                                Сообщение # 4
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1086
Репутация: 32   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

Вы можете глянуть еще эту статью. На всякий, как, говорится...
555serg Дата: Ср, 08.06.2016, 09:32  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Пытаюсь разобраться
Сообщений: 41
Репутация: 0   ±
Замечания:   ±
На сайте с 12.12.2011

Статус: Offline

Спасибо ADMIN пригодится. Полезная информация, ни где не встречал ранее.
У меня еще есть вопрос, по структуре команд в Протоне. Попробую спросить здесь,
что бы не плодить множество разных новых тем, если не прав - поправьте.
Вопрос касается команд, работы с одно проводным интерфейсом по 1-Wire протоколу.
Это команды ORead и QWRite. Хотелось бы знать какими ресурсами компилятор
Протона обеспечивает необходимые в работе этих команд временные выдержки - тайм
слоты? Другими словами - когда создается ассемблерный код, на чем основана выдержка
этих интервалов. Если это какие либо внутренние таймеры самого контроллера, то что
произойдет если программист будет использовать эти таймеры ( TMR0 - TMR2 ) в своей
программе? Или же компилятор ориентируясь на прописанную  в шапке проги информацию
по тактовой частоте контроллера оперирует nop -ами в разных внутренних циклах, и тем
самым создаются необходимые временные интервалы?
Возможно это все можно увидеть в ассемблерном листинге, но если у кого есть инфа,
по этому вопросу - поделитесь. Заранее спасибо.

Сообщение отредактировал 555serg - Ср, 08.06.2016, 11:46
ADMIN Дата: Чт, 09.06.2016, 06:30  |                                                                                                                Сообщение # 6
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1086
Репутация: 32   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

Я использовал одновременно и таймеры и команды 1-Wire раньше. Проблем не возникало. Более чем уверен, что используются простые циклы для задержек.
  • Страница 1 из 1
  • 1
Поиск: