Форум программистов, компьютерный форум CyberForum.ru

Битовые операции, битовые поля. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.79
rodrigezrobert
1 / 1 / 0
Регистрация: 03.07.2010
Сообщений: 77
22.06.2011, 16:17     Битовые операции, битовые поля. #1
Здравствуйте!
Еслть 4 диапазона чисел: 0-100, 0-100, 0-6000, 0-3. Сделать в виде битовых операций. Записать в unsigned int. Использовать смещение побитовые +, и, присвоить. Определить сколько нужно битов по каждый диапазон. Использовать смещение побитовые +, и, присвоить. Чтобы прочитать надо наложить маску.
Спасибо
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2011, 16:17     Битовые операции, битовые поля.
Посмотрите здесь:

Битовые операции C++
C++ Битовые операции.
битовые операции C++
Битовые операции C++
C++ Битовые операции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
22.06.2011, 17:51
  #2

Не по теме:

К примеру есть 3 файла: 1-ый содержит существительные, 2-ой прилогательные, 3-ий глаголы. Пишем прогу, котрая рандомно берет по слову из этого файла и выводит на stdout. Так вот полученный вывод, ИМХО, будет более связным, чем пост ТС.

grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
22.06.2011, 18:08     Битовые операции, битовые поля. #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Kastaneda, просто исходный пост зашифрован. Читай внимательнее конец:
Цитата Сообщение от rodrigezrobert Посмотреть сообщение
Чтобы прочитать надо наложить маску.
Kastaneda
Модератор
Эксперт С++
 Аватар для Kastaneda
4237 / 2770 / 218
Регистрация: 12.12.2009
Сообщений: 7,104
Записей в блоге: 1
Завершенные тесты: 1
22.06.2011, 18:39     Битовые операции, битовые поля. #4

Не по теме:

grizlik78,



Чтоб как то реабилитировать наш флуд, вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#define N 3
int main(){
    unsigned lim[]={3,100,6000};
    for(int i=0;i<N;i++){
        unsigned n=1;
        int count=1;
        while(++count&&((n<<=1)|=1)<lim[i]);
        std::cout<<"For 0-"<<lim[i]<<" need "<<count<<" bits\n";
    }
        return 0;
}
считает небходимое кол-во бит для хранения числа из требуемого диапазона. Остальное задание не понял.
rodrigezrobert
1 / 1 / 0
Регистрация: 03.07.2010
Сообщений: 77
22.06.2011, 23:00  [ТС]     Битовые операции, битовые поля. #5
Я честно говоря в этих битовых операциях "ни ... не рубаю" , даже объяснить толком не могу, простите пожалуйста.
Первый этап делался типа

dw.number +=99;
dw.number <<=7;
dw.number +=74;

а как наложить маску я увы ....
DeadRipper
64 / 70 / 3
Регистрация: 25.06.2009
Сообщений: 244
23.06.2011, 16:44     Битовые операции, битовые поля. #6
Определить сколько нужно битов по каждый диапазон.
количество бит будет равно логарифму по основанию 2, от числа возможных значений
Yandex
Объявления
23.06.2011, 16:44     Битовые операции, битовые поля.
Ответ Создать тему
Опции темы

Текущее время: 21:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru