|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
С, битовая запись18.03.2015, 14:42. Показов 6282. Ответов 20
Метки нет (Все метки)
Всем доброго времени суток, после 3 дней поиска информации решил попытать счастье, задав вопрос у форумчан. так же читал много подобных вопросов, но в свою очередь, сформулированы они были не читабельно. Итак, начну.
есть переменная, длиной в 1 байт, значение которой записано в шестнадцатеричнной системе. i=0xAA; далее нужно взять переменную и значение каждого из 8ми (0-7) байтов поместить в отдельные переменные. я пытался осуществить это как-то так: i|=(a=0)|(b=1)|(c=2)|(d=3)|(i=4)|(f=5)|( g=6)|(g=7); // НЕПРАВИЛЬНО в общем такой вариант не сработал, хотя установка отдельных битов по такому принципу работает: i|=(1<<0)|(1<<2); Ребят, кто знает что-нибудь - поделитесь информацией, заранее спасибо.
0
|
|
| 18.03.2015, 14:42 | |
|
Ответы с готовыми решениями:
20
битовая маска битовая маска |
|
Модератор
13771 / 10964 / 6491
Регистрация: 18.12.2011
Сообщений: 29,241
|
||||||
| 18.03.2015, 14:51 | ||||||
0
|
||||||
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 18.03.2015, 16:10 [ТС] | |
|
castaway, zss, спасибо за помощь, но не подходит. биты не записались(
0
|
|
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 18.03.2015, 16:22 [ТС] | |
|
castaway, хм. первый бит переменной i записался в переменную 1bit? тоесть в bit1=0, bit2=1, и так далее?
просто работаю в avr. watch не работает почему-то, поэтому слежу за переменными через протеус, и там все очень плохо
0
|
|
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 18.03.2015, 16:36 [ТС] | |
|
castaway, тогда позвольте, если я в конец не оборзел узнать как совержить обратную операцию?
допустим есть: bit1 = 0 bit2 = 1 bit3 = 0 bit4 = 1 bit5 = 0 bit6 = 1 bit7 = 0 bit8 = 1 и после поместить в правильном порядке все в переменную d допустим. по сути получается что приравняли i=d, но смысл в том, что мне нужны будут определенные биты для формул, из-за этого и заморочка такая.
0
|
|
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 18.03.2015, 17:22 [ТС] | |
|
castaway, иду пробовать, спасибо большое
Добавлено через 36 минут [castaway, извините за настырность, а связаться с вами тет-а-тет возможно или вы только на форуме предпочитаете сидеть?
0
|
|
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 18.03.2015, 17:38 [ТС] | |
|
castaway, ну почта или соц сеть, устраивает, просто мне кажется, что больно тут не удобно, уже много раз один вопрос мусолится
0
|
|
|
|
|
| 18.03.2015, 17:48 | |
|
MAKAPOB, лучше всё-таки сюда. В соц. сетях я давно не был, почта у меня долго грузится из-за медленного интернета.
Просто задавай вопросы которые тебя интересуют, желательно для каждого вопроса создавать отдельную тему. Если все твои вопросы подобны этому, то ответы на них можно получить довольно быстро.
0
|
|
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
||||||
| 20.03.2015, 21:35 [ТС] | ||||||
|
castaway,
0
|
||||||
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
|||
| 20.03.2015, 21:41 | |||
|
можешь прочитать что есть битовые поля диалект языка для AVRки поддерживает работу с битами, поскольку дозволяет процессор но массив битов ты создать не можешь, если интересует почему открой описания камня и его карту памяти да и код будет непереносим
0
|
|||
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
|
| 20.03.2015, 21:45 [ТС] | |
|
ValeryS, про битовые поля нашел только замену на 1 и обнуление умножением на ноль, но как же мне считать бит по отдельности? программно никак получается?
0
|
|
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
|||||||||||||||||||
| 20.03.2015, 21:50 | |||||||||||||||||||
|
для битов есть ключевое слово bit
вот например прочитать второй бит
http://www.c-cpp.ru/books/bitovye-polya
0
|
|||||||||||||||||||
|
1 / 1 / 0
Регистрация: 18.03.2015
Сообщений: 10
|
||
| 20.03.2015, 21:51 [ТС] | ||
|
0
|
||
|
Модератор
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,857
|
||||||||
| 20.03.2015, 21:57 | ||||||||
ты накосячил, а я дернул не глядясравни
у тебя сдвигается на 1 разряд а следующий на 3 а сдвиг на 8 вообще равен обнулению байта
0
|
||||||||
| 20.03.2015, 21:57 | |
|
Помогаю со студенческими работами здесь
20
Битовая математика Битовая маска Битовая арифметика
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|