Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Гость
#1

Как построить байт, если биты устанавливаются/сбрасываются через чекбоксы? - C++

16.09.2007, 15:50. Просмотров 2041. Ответов 2
Метки нет (Все метки)

То есть как принять значиния от этих чекбоксов я уже сделал (они записываются в отдельные переменные для каждого чекбокса) у меня вопрос как теперь из этих переменных байт сделать..То есть предполагается, что ети переменные (и чекбоксы тоже)-ето биты от 0 до 7
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2007, 15:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как построить байт, если биты устанавливаются/сбрасываются через чекбоксы? (C++):

Байт в биты в файле - C++
Нашёл такую реализацию(вроде бы реализацию, я сам не знаю как она работает) превращения байта символа в биты. Но не могу понять, как собой...

не получаеться преобразовать 8 ьит в 1 байт (биты в десятичное число) - C++
вот код надо написать на с++ но решил на дельфи но он не работает что то как будто проскакивает последний разряд const _SIZE =...

Ввести целое число A. Инвертировать все биты с 4 по 8, включая эти биты. Вывести результат - C++
нужна помощь в битовых операциях.Ввести целое число A. Инвертировать все биты с 4 по 8, включая эти биты. Вывести результат.

Обращение к элементам массива через биты некоторого числа - C++
Пусть есть массив Mass из 10 элементов и число А = 510 = 0...0 01012. Мне надо обратиться к 0 и 2 элементам (или к 7 и 9 - это как...

Зачем биты нужны это меньше байтов но int 32 бита но я не допер зачем это нужно это 4 байта то есть int не может больше 4 байт весить? - C++
Вот еще один вопрос зачем биты нужны это меньше байтов но int 32 бита но я не допер зачем это нужно это 4 байта то есть int не может...

... В четных байтах числа в двоичной системе переместить нулевые биты в старшие биты, а в нечетных байтах – в младшие ... - C++
Доброго времени суток всем, столкнулся с проблемой по С++,требуется написать программу: которая получает 1)случайное целое типа int,...

2
Lord_Voodoo
Супер-модератор
8594 / 2211 / 61
Регистрация: 07.03.2007
Сообщений: 10,974
Завершенные тесты: 1
19.09.2007, 12:22 #2
ну так это делается очень просто: распредели чекбоксы по битам и прибавляй в результирующий байт с возведением в соответствующую биту степень двойки, обратная лперация идет исключающим или с соответствущей степенью двойки
0
bor.is
0 / 0 / 1
Регистрация: 29.08.2007
Сообщений: 9
20.09.2007, 13:12 #3
ну например есть byte куда нужно занести биты и чекбоксы в массиве из восьми элементов box, если я правильно понял, то в чекбоксах значения 1 или 0
C++
1
2
3
4
5
6
int byte = 0;
int box[8] = { 0, 1, 1, 0, 0, 0, 0, 0 };
int it = 0;
do {
   byte |= box[it] << it;
} while (++it != 8);
так вот
  • eсли я хочу включить бит pos в байте byte я делаю
    C++
    1
    
    byte |= 1 << pos;
  • выключить бит pos в байте
    C++
    1
    
    byte[code]byte &= ~(1 << pos);
  • изменить бит числа byte в позиции pos на противоположный
    C++
    1
    
    byte ^= 1 << pos;
кто не знает:
& - побитовая конъюнкция (и)
| - побитовая дизъюнкция (или)
~ - побитовое отрицание (негатив)
<< - сдвиг влево числа слева на количество битов равное значению числа справа (новые биты устанавливаются в нуль)

P.S. с помощью этих операций очень удобно переводить чары в цифры и наоборот
если есть чар ch и нужно его перевести в число dig
C++
1
dig = ch & 0xf;
если нет уверенности что в ch точно цифра - это легко проверяется isdigit() из <cctype>
а из цифры dig в чар ch
C++
1
ch = dig | 0x30;
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2007, 13:12
Привет! Вот еще темы с ответами:

Дан массив из 10 байт. Посчитать количество байт, в которых сброшены 6 и 4 биты - Assembler
Дан массив из 10 байт. Посчитать количество байт,в которых сброшены 6 и 4 биты. Массив байтов размещается начиная с DS:0000h. Ответ должен...

Определение в массиве из 15 байт количества байт, в которых сброшены 6 и 4 биты - Assembler
Помогите пожалуйста разработать программу на языке ассемблера, определяющую в массиве из 15 байт количество байт, в которых сброшены 6 и 4...

Объясните, как показываются биты, составляющие байт? - C#
Здравствуйте, изучаю C# по Шилдту, дошёл до работы с битами. Более-менее понял как считаются числа в двоичной системе, понял как...

Как произвольный байт на входе преобразовать в биты - C#
Собственно, вопрос в заголовке )) Подскажите, пожалуйста! ))


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru