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

Представление из бит в байт - C++

Восстановить пароль Регистрация
 
 
Bdavid008
20 / 20 / 0
Регистрация: 24.03.2014
Сообщений: 77
14.05.2014, 20:14     Представление из бит в байт #1
Вообще такая беда как представить биты в то что они были сначала,вот так я представляю байт в битах с помощью маски,а как обратно не знаю
C++
1
2
3
4
5
6
7
 for (int i = 0; i < N; i++){
 
                    for (int j = 0, byte = buf[i]; j < 8; byte <<= 1, j++){
 
                        byte & 0x80 ? bit[k] = 1 : bit[k] = 0;
                        k++;
                    }
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
15.05.2014, 22:42     Представление из бит в байт #21
Пусть тогда сам пишет на асме, раз такой оптимизатор твой препод Он точно плюсы преподает, а не сишечку?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,040
15.05.2014, 23:31     Представление из бит в байт #22
Цитата Сообщение от Bdavid008 Посмотреть сообщение
у меня препод любит оптимизацию )я тут и так с хитрил в массив интовский все загнал
ни фига себе оптимизация
31 бит впустую
Bdavid008
20 / 20 / 0
Регистрация: 24.03.2014
Сообщений: 77
16.05.2014, 10:44  [ТС]     Представление из бит в байт #23
он как раз нам асм и преподает)ну помогите ребят)
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
16.05.2014, 11:02     Представление из бит в байт #24
Цитата Сообщение от Bdavid008 Посмотреть сообщение
ну помогите ребят)
С чем помочь-то? По-моему всё обсосали уже.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2014, 14:32     Представление из бит в байт
Еще ссылки по теме:

C++ функция изменяет старший байт числа на заданное значение не изменяя младший байт
C++ Закодировать файл. Взять 7 байт. Первый бит каждого байта переместить в 8 байт
C++ Как сложить два float-а, имея их представление в виде массива байт?

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

Или воспользуйтесь поиском по форуму:
Bdavid008
20 / 20 / 0
Регистрация: 24.03.2014
Сообщений: 77
16.05.2014, 14:32  [ТС]     Представление из бит в байт #25
Кароче я розобрался мой косяк вот код если что
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
const int NUM = 64;
                int sampel[NUM];
                int bit[NUM];
                int k = 0;
                for (int i = 0; i < N; i++){
                    for (int j = 0, byte = buf[i]; j < 8; byte >>= 1, j++){
                        byte & 0x01 ? bit[k] = 1 : bit[k] = 0;
                        k++;
                    }
                    
                    }
                for (int i = 0; i < NUM; i++){
                    if (i % 8 == 0){
                        cout << endl;
                    }
 
                    cout << bit[i];
 
                }
                for (i = 0; i < NUM; i++) //перестановка
                {
                    sampel[i]=bit[i];
    
                }
                
                
                for (int i = 1; i <= NUM; i++){
                    if (i % 8 == 0){
                        cout << endl;
                    }
                    
                        cout << bit[i];
                    
                }
                for (int i = 0; i < N; i++)
                {
                    buf[i] = 0;
                }
                i = 8;
                k = 0;
                for (int j = 0; j < N; j++){
                    for (; k < i; k++){
                        buf[j] |= (bit[k] <<= k % 8);
                        //cout << k << endl;
 
                    }
                    cout << j << buf[j] << endl;
                    i = i + 8;
 
                }
Добавлено через 39 секунд
согасен ,ладно спасибо
Yandex
Объявления
16.05.2014, 14:32     Представление из бит в байт
Ответ Создать тему
Опции темы

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