Как правильно отнять пол байта?

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Аватара пользователя
ElectroMechaniC
Сержант
Сообщения: 230
Зарегистрирован: 21 сен 2016, 06:50
Откуда: Донецк
Имя: Юрий

Как правильно отнять пол байта?

Сообщение ElectroMechaniC »

ардуино по UART получает число:

Код: Выделить всё

Hex:  03 04 59 70
Как правильно объявить переменную от этого числа равную:

Код: Выделить всё

a = 03 04 59 7
Другими словами нужно откинуть последний "0"
Дело в том что мне нужно перевести его в десятичные...
А переводе на десятичные должно выйти

Код: Выделить всё

DEC: 3163543

А если просто присвоить переменной 4е байта получается

Код: Выделить всё

DEC: 50616688
В калькуляторе то всё просто, а вот в скетче играюсь со сдвигами байтов, но пока что не выходит "аленький цветочек"
Подскажите ЗНАТОКИ!
:newrus: Все в руках человека. Поэтому всегда мойте руки перед и зад! :victory:
:smile225: :smile469: :smile427:
Аватара пользователя
kulibinsvv
Лейтенант
Сообщения: 487
Зарегистрирован: 18 сен 2015, 10:04
Откуда: Омск
Благодарил (а): 3 раза
Поблагодарили: 5 раз

Как правильно отнять пол байта?

Сообщение kulibinsvv »

[ref]ElectroMechaniC[/ref], нужно сделать следующее:
1.Переводите число HEX: 03 04 59 70 в десятичный вид.
2. Полученное число делите на 16.
3. И весело идёте пить пиво.
:D
Мой змей, этот ползучий соблазн сомнения,всё шевелится, побуждая «искать концы»... (Станислав Ермаков)
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Как правильно отнять пол байта?

Сообщение Sancho »

[ref]ElectroMechaniC[/ref], Сдвиг вправо на 4 бит поможет :)
1 байт = 8 бит = два символа в Hex. Каждый символ = 4 бита.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
ElectroMechaniC
Сержант
Сообщения: 230
Зарегистрирован: 21 сен 2016, 06:50
Откуда: Донецк
Имя: Юрий

Как правильно отнять пол байта?

Сообщение ElectroMechaniC »

[ref]kulibinsvv[/ref], да спасибо!
Получилось!
Блин! как это работает?
:newrus: Все в руках человека. Поэтому всегда мойте руки перед и зад! :victory:
:smile225: :smile469: :smile427:
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

Как правильно отнять пол байта?

Сообщение Sancho »

Замени типы переменных в блоках на необходимые тебе

Отправлено спустя 1 минуту 1 секунду:
Каждый сдвиг вправо на один бит эквивалентен делению на два.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
ElectroMechaniC
Сержант
Сообщения: 230
Зарегистрирован: 21 сен 2016, 06:50
Откуда: Донецк
Имя: Юрий

Как правильно отнять пол байта?

Сообщение ElectroMechaniC »

[ref=#ff8000]Sancho[/ref], спасибо! Запомню...
:newrus: Все в руках человека. Поэтому всегда мойте руки перед и зад! :victory:
:smile225: :smile469: :smile427:
Ответить

Вернуться в «Спросить у знатоков»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя