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

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

Войти
Регистрация
Восстановить пароль
 
WebMacTep
 Аватар для WebMacTep
21 / 21 / 1
Регистрация: 03.10.2013
Сообщений: 128
#1

Отображение ASCII символов в двоичном коде - C++

26.03.2014, 23:10. Просмотров 906. Ответов 4
Метки нет (Все метки)

Добрый день. Есть программа, которая отображает двоичный код ASCII символа.

Кликните здесь для просмотра всего текста
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
51
52
53
54
55
#include <iostream>
 
using namespace std;
 
struct byte
{
    unsigned a : 1;
    unsigned b : 1;
    unsigned c : 1;
    unsigned d : 1;
    unsigned e : 1;
    unsigned f : 1;
    unsigned g : 1;
    unsigned h : 1;
};
 
union bits
{
    char ch;
    struct byte bit;
} ascii;
 
void disp_bits(bits b);
 
int main()
{
    do
    {
        cin >> ascii.ch;
        disp_bits(ascii);
    } while (ascii.ch != 'q');
 
    return 0;
}
 
void disp_bits(bits b)
{
    if (b.bit.h) cout << "1 ";
        else cout << "0 ";
    if (b.bit.g) cout << "1 ";
        else cout << "0 ";
    if (b.bit.f) cout << "1 ";
        else cout << "0 ";
    if (b.bit.e) cout << "1 ";
        else cout << "0 ";
    if (b.bit.d) cout << "1 ";
        else cout << "0 ";
    if (b.bit.c) cout << "1 ";
        else cout << "0 ";
    if (b.bit.b) cout << "1 ";
        else cout << "0 ";
    if (b.bit.a) cout << "1 ";
        else cout << "0 ";
    cout << endl;
}


Так вот у меня вопрос: почему в структуре byte переменные объявляются в алфавитном порядке, а в функции disp_bits в обратном?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2014, 23:10     Отображение ASCII символов в двоичном коде
Посмотрите здесь:

Вывести содержимое файла в двоичном коде C++
C++ Подсчёт единиц и нулей в двоичном коде
C++ Написать программу на поиск закономерностей в двоичном коде (парсер)
Вывести число в двоичном коде C++
C++ Как определить сколько единиц в двоичном коде символа?
Представить число в двоичном коде и собрать обратно C++
C++ Подсчёт нулей в двоичном коде
C++ Найти сумму ряда чисел, представленных в двоичном коде
C++ Вывод float в двоичном коде
C++ Как представить int в двоичном коде
C++ Чтение файла в двоичном коде
C++ Представить число в двоичном коде и в коде Грея

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6451 / 4917 / 451
Регистрация: 14.02.2011
Сообщений: 16,308
26.03.2014, 23:18     Отображение ASCII символов в двоичном коде #2
Цитата Сообщение от WebMacTep Посмотреть сообщение
Так вот у меня вопрос: почему в структуре byte переменные объявляются в алфавитном порядке, а в функции disp_bits в обратном?
потому что в структуре они описаны от младшего к старшему ( сверху вниз)
а выводится сначала старший а потом младший (мы же слева направо пишем)
WebMacTep
 Аватар для WebMacTep
21 / 21 / 1
Регистрация: 03.10.2013
Сообщений: 128
27.03.2014, 00:08  [ТС]     Отображение ASCII символов в двоичном коде #3
ValeryS, насколько я понял, в памяти они расположены так: a-f, верно? Так почему же выводится сначала старший?
ValeryS
Модератор
6451 / 4917 / 451
Регистрация: 14.02.2011
Сообщений: 16,308
27.03.2014, 00:20     Отображение ASCII символов в двоичном коде #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от WebMacTep Посмотреть сообщение
Так почему же выводится сначала старший?
ты число сто как пишешь?
100 сначала старший потом средний потом младший ?
или наоборот 001?
Цитата Сообщение от WebMacTep Посмотреть сообщение
насколько я понял, в памяти они расположены так: a-f, верно?
не совсем
байт это единое целое и как процессор его хранит, одному ему известно( обычно параллельно)
но для удобства можно считать так
WebMacTep
 Аватар для WebMacTep
21 / 21 / 1
Регистрация: 03.10.2013
Сообщений: 128
27.03.2014, 01:11  [ТС]     Отображение ASCII символов в двоичном коде #5
ValeryS, точно, спасибо. А то попутал младший/старший.
Yandex
Объявления
27.03.2014, 01:11     Отображение ASCII символов в двоичном коде
Ответ Создать тему
Опции темы

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