![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
Есть ли в с++ какое то встроенное средство для перевода чисел из одной системы счисления в другую?
|
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
для ввода/вывода чисел в заданной системе счисления - да есть .. вот у стандартных потоков для 8-,10-,16-ричных систем : http://www.cplusplus.com/reference/iostrea...nipulators/hex/ расширяется путем написания нужного манипулятора.. также можно взглянуть на наследованные от си http://www.cplusplus.com/reference/clibrary/cstdlib/atoi/ и те что ниже.. Это сообщение отредактировал(а) mes - 23.10.2011, 13:13 |
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
а если мне числа надо постоянно переводить из 10 в двоичную СС, причём не при вводе/выводе, то придёся ручками всё писать?
|
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
числа всегда хранятся в двоичном виде.. Вы можете их переводить только из/в строкового/e представления/e.. А это уже ввод/вывод.. Выводить можно не только на монитор, но и в строку (смотрите std::stringstream) .. Добавлено через 3 минуты и 30 секунд постарайтесь поточнее сформулировать, что именно Вам нужно, тогда и ответ будет более точный.. Это сообщение отредактировал(а) mes - 23.10.2011, 13:25 |
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
есть 6 битовое число(двоичное). его надо разделить на 2
1 - 1 и последний бит 2 - средние биты и перевести оба в десятичную СС Добавлено @ 13:35 это должны быть две переменных типа int Это сообщение отредактировал(а) redwhite90 - 23.10.2011, 13:35 |
|||
|
||||
newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 3 Всего: 19 |
redwhite90, не надо ничего никуда переводить. Все данные в машине хранятся в двоичном виде (есть экзотические недвоичные машины, но не суть важно). Nо, что комп печатает на экран, - лишь способ представления данных в человекочитаемом виде.
А стандартной функции вывода числа в двоичном виде кстати говоря нет. Можешь сделать себе первый урок: вывод двоичного числа и второй урок: выполнение основного задания по разделению числа. Это сообщение отредактировал(а) newbee - 23.10.2011, 14:18 -------------------- You're face to face With man who sold the world |
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
я что-то не понял как это реализовать
Добавлено через 1 минуту и 36 секунд у меня исходное число(6 bit) будети иметь вид 101011 например |
|||
|
||||
newbee |
|
|||
![]() Бревно ![]() ![]() Профиль Группа: Участник Сообщений: 703 Регистрация: 24.8.2011 Репутация: 3 Всего: 19 |
redwhite90, почитай про маски и сдвиги, потренируйся, если все еще не будет получаться, возвращайся с более конкретными вопросами "что я делаю не так?".
-------------------- You're face to face With man who sold the world |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
перевести в систему счисления можно только строковое представление числа.. в инте оно всегда машинозависимо (т.е. в двоичной сс)
не понятно что Вы этим хотели сказать, но работая с битами никак не сказывается на вывод, и поумолчанию который будет выведен в 10ричной системе счисления.. ну просил же почетче формулировать.. шесть бит могут быть как частью потока данных, так частью переменной, так и строкой.. в вашей интерпретации задачи абсолютноне понятно, чего Вы желаете.. |
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
mes, 6 битовое число, о котором идёт речь, это строка string
Добавлено через 4 минуты и 53 секунды и как сделать побитовый XOR у двух строк? string1 10101010101111010100101 string2 11010101010111000000010 есть какие-то конверторы? |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
тоггда посмотрите сюда : http://www.cplusplus.com/reference/stl/bitset/ Добавлено через 57 секунд http://www.cplusplus.com/reference/stl/bitset/operators/ Это сообщение отредактировал(а) mes - 23.10.2011, 14:49 |
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
mes, спасибо - то, что надо.
строку только резать наверное как-то криво придётся при помощи [] |
|||
|
||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
||||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
как я понял можно только со 2-ого по 4-ый бит. а чтоб 1-ый и последний (не второй) - так нельзя
|
|||
|
||||
redwhite90 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 332 Регистрация: 14.7.2011 Репутация: нет Всего: нет |
как я понял можно только со 2-ого по 4-ый бит. а чтоб 1-ый и последний (не второй) - так нельзя
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |