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

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

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

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

26.03.2014, 23:10. Просмотров 1186. Ответов 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 в обратном?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2014, 23:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отображение ASCII символов в двоичном коде (C++):

Представить число в двоичном коде и в коде Грея - C++
Всем доброго вечера) у меня такая просьба, помогите написать программу по коду Грея, чтобы пользователь сам ввел число в диапозоне от -100...

Чтение файла в двоичном коде - C++
Моя цель открыть любой файл в двоичном коде и записать этот код в отдельный txt файл #include &lt;stdlib.h&gt; #include &lt;iostream&gt; #include...

Вывод float в двоичном коде - C++
И снова здравствуйте форумчане, если не сложно, подскажите с реализацией этой задачи. Ведь float есть тип данных с плавающей точкой. ...

Вывести число в двоичном коде - C++
решите задачу, пожалуйста: вывести 1 байтовое целое число без знака в 2-ом коде ( а) с использованием операции деления, б) с...

Подсчёт нулей в двоичном коде - C++
Есть код который возвращает количество единиц в двоичном представлении целого числа, как переделать что бы он считал количество нулей ? ...

Подсчёт единиц и нулей в двоичном коде - C++
Просьба помочь написать программу на языке C++, которая определяет и выводит на экран количество единиц и нулей в двоичном представлении...

4
ValeryS
Модератор
6709 / 5118 / 482
Регистрация: 14.02.2011
Сообщений: 17,213
26.03.2014, 23:18 #2
Цитата Сообщение от WebMacTep Посмотреть сообщение
Так вот у меня вопрос: почему в структуре byte переменные объявляются в алфавитном порядке, а в функции disp_bits в обратном?
потому что в структуре они описаны от младшего к старшему ( сверху вниз)
а выводится сначала старший а потом младший (мы же слева направо пишем)
0
WebMacTep
21 / 21 / 1
Регистрация: 03.10.2013
Сообщений: 128
27.03.2014, 00:08  [ТС] #3
ValeryS, насколько я понял, в памяти они расположены так: a-f, верно? Так почему же выводится сначала старший?
0
ValeryS
Модератор
6709 / 5118 / 482
Регистрация: 14.02.2011
Сообщений: 17,213
27.03.2014, 00:20 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от WebMacTep Посмотреть сообщение
Так почему же выводится сначала старший?
ты число сто как пишешь?
100 сначала старший потом средний потом младший ?
или наоборот 001?
Цитата Сообщение от WebMacTep Посмотреть сообщение
насколько я понял, в памяти они расположены так: a-f, верно?
не совсем
байт это единое целое и как процессор его хранит, одному ему известно( обычно параллельно)
но для удобства можно считать так
1
WebMacTep
21 / 21 / 1
Регистрация: 03.10.2013
Сообщений: 128
27.03.2014, 01:11  [ТС] #5
ValeryS, точно, спасибо. А то попутал младший/старший.
0
27.03.2014, 01:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.03.2014, 01:11
Привет! Вот еще темы с ответами:

Как представить int в двоичном коде - C++
Всем привет! У меня задание подсчитать сколько единиц в бинарном числе, соответствующем некому числу n (введенному десятичному)...там...

Вывести содержимое файла в двоичном коде - C++
Здраствуйте, не могли бы вы помочь с программой? она должна просто показывать битовое представление чисел, записанных в data.dat, но...

Представить число в двоичном коде и собрать обратно - C++
Не могу найти ошибку в цикле Здравствуйте. Есть такой цикл: A = 555; while(A != 1) { c++; ...

Написать программу на поиск закономерностей в двоичном коде (парсер) - C++
Доброго времени суток. На самом деле я не знаю язык С/C++. Но мне необходима одна программа, прошу мне как-нибудь помочь. Мы...


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

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

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