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

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

Войти
Регистрация
Восстановить пароль
 
SNIKERSMRG
3 / 3 / 1
Регистрация: 15.08.2013
Сообщений: 30
#1

Бит 8, младший и старший бит (по книге) - C++

02.08.2016, 12:04. Просмотров 510. Ответов 5
Метки нет (Все метки)

Добрый день.
Вот читаю книгу, и не пойму элементарной на первый взгляд вещи.

Как понять следующие предложения:

1) Если бит выдвигается из байта, это будет бит 8 целого числа.
В этом случае поместим этот бит с правой стороны.

Имеется ввиду, что было число, скажем 1000 0000, которую побитовым оператором циклически сдвинули налево и получилось число 0000 0001 да ? А что значит, это будет бит 8 целого числа ? почему просто не сказать что это будет восьмой бит ? Младший бит это самый левый, а старший бит самый правый да ?

2) Не понятно при чем в этой программе число 256, ведь это уже 9 бит получается, а не 8.

3) Фраза есть, "он просто смещается в бит 8 числа int".
Стоит ли понимать эту фразу как бит смещается в восьмой бит ? Или я не правильно понимаю ?

4) Как понимать, и вообще верно ли это предложение ? :
Значение 256 - это десятичное число, в котором установлен один бит 8.
Ведь число 256 невозможно записать в 8 бит, я так запутался сильно.

В спойлере фотография страниц книги



Кликните здесь для просмотра всего текста

Бит 8, младший и старший бит (по книге)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2016, 12:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Бит 8, младший и старший бит (по книге) (C++):

Старший бит - C++
Допустим число 4 представляю в двоичной системе счисления получается 0100. В етом двоичном числе старший бит ет 3 бит?

Для заданного положительного целого вывести младший бит - C++
Младший бит Для заданного положительного целого A (1 ≤ A ≤ 100), вывести младший бит A. Например, если A = 26, то его мы можем...

Сравнить младший бит в двоичном представлении определённых целых значений - C++
Напишите программу, которая сравнивает младший бит в двоичном представлении определённых целых значений A и B. C++

Если символ — русская гласная буква, то заменить в нем младший бит единицей - C++
Ввести последовательность из 8 символов. Если символ - русская гласная буква, то заменить в нем младший бит единицей, иначе - заменить 2-й...

Если символ — русская гласная буква, то заменить в нем младший бит единицей - C++
Собственно, совсем не получается выполнить следующее задание: Ввести последовательность из 8 символов. Если символ - русская гласная...

Удалить из каждого байта строки первый (старший) бит. - C++
Здравствуйте. Суть задачи в общем-то и отображена в названии задачи. Есть строка: unsigned char str; Необходимо в каждом...

5
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
02.08.2016, 12:18 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
Младший бит это самый левый, а старший бит самый правый да ?
0000 0000
красный - старший
синий - младший
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
оператором циклически сдвинули налево
каким образом?
Простые сдвиги (>>, <<) не являются циклическими.
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
в этой программе
В какой?
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
записать в 8 бит
младший бит - 0
старший бит - 7
младший бит следующего байта - 8
1
HenryDukart
123 / 123 / 35
Регистрация: 05.10.2013
Сообщений: 457
Завершенные тесты: 2
02.08.2016, 12:23 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
А что значит, это будет бит 8 целого числа ?
Говорится, что вы передвинули седьмой бит на восьмую позицию.

Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
Младший бит это самый левый, а старший бит самый правый да ?
Обычно наоборот. В вашей книге говорится, что самый левый бит — самый старший.

Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
2) Не понятно при чем в этой программе число 256, ведь это уже 9 бит получается, а не 8.
Да. Число 256 с помощью восьми битов не записать. Может там говорится про сдвиг 1000 0000 на один бит влево? (0001 0000 0000).

Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
3) Фраза есть, "он просто смещается в бит 8 числа int".
Ну здесь действительно так и произошло. Из седьмого бита сдвинули в восьмой (отсчет с нуля).

Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
Значение 256 - это десятичное число, в котором установлен один бит 8.
Ведь число 256 невозможно записать в 8 бит, я так запутался сильно.
Верно, если отсчет с нуля.
1
SNIKERSMRG
3 / 3 / 1
Регистрация: 15.08.2013
Сообщений: 30
02.08.2016, 12:27  [ТС] #4
HenryDukart,
Значение 256 - это десятичное число, в котором установлен один бит 8.
...в котором установлен всего один бит, в восьмой бит.

Так читается да ?
0
HenryDukart
123 / 123 / 35
Регистрация: 05.10.2013
Сообщений: 457
Завершенные тесты: 2
02.08.2016, 12:37 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
SNIKERSMRG, в котором установлен в единицу восьмой бит, а все остальные - в ноль.
1
SNIKERSMRG
3 / 3 / 1
Регистрация: 15.08.2013
Сообщений: 30
02.08.2016, 12:37  [ТС] #6
HenryDukart, спасибо большой вам !
Тему можно закрывать.
0
02.08.2016, 12:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.08.2016, 12:37
Привет! Вот еще темы с ответами:

Найти первые N чисел при которых младший бит является зеркальным отражением следуещего бита - C++
nado NAITI pervie N celix 4isel pri kotorix mladshii bit yavlyaetsya zerkalnim otrajeniyem predidushego!

переход с 32 бит на 64 бит - C++
Здравствуйте. Пробую на builder 10 перевести проект с 32 на 64 бит. Возникают странные ошибки: template &lt;typename T&gt; class DOT { ...

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

В числе 15 поменять местами младший и старший байты - C++
Здравствуйте всем объясните пожалуйста как например в числе 15 поменять местами младший и старший байты (Я Си изучаю только два дня) ...


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

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

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