Итак, двоичный код — это просто основание 2, верно? 1с и 0с. Но почему, когда вы конвертируете из dec в bin, например, в Google, перед фактическим числом также стоит (x)b? Что означает, например, 0b __?
Двоичные числа и представление оснований
Ответы (1)
Обозначение 0b перед числом — это просто индикатор того, что то, что следует за ним, представлено в двоичном формате. Таким образом, если вы видите что-то вроде 1001, вы знаете, что это число «одна тысяча один», а не девять, записанное в двоичном формате.
В более общем смысле префикс 0b обычно означает «двоичный», префикс 0 обычно означает «восьмеричный», а префикс 0x обычно означает «шестнадцатеричный».
Надеюсь это поможет!
person
templatetypedef
schedule
08.07.2013
хорошо, я понимаю. так что не было бы случая, когда это было бы похоже на 1b вместо 0b, верно? если да, то почему бы просто не б?
- person Aristides; 09.07.2013
@Aristides- Я думаю, что причина историческая. C использовал префикс 0 и префикс 0x для восьмеричного и шестнадцатеричного, поэтому, когда сканер встречал токен, начинающийся с 0, он знал, что это определенно число (поскольку идентификаторы не могут начинаться с чисел). Например,
b100101
можно интерпретировать как имя переменной, а не целочисленный литерал. Конвенция сохранилась с тех пор.
- person templatetypedef; 09.07.2013
о, так что, если число перед буквой b равно 3, это может быть объект или что-то в этом роде?
- person Aristides; 09.07.2013
@Aristides- Не совсем так - если перед
b
вообще нет числа, то оно выглядит как имя переменной. Тот факт, что число всегда равно 0, является чисто историческим.
- person templatetypedef; 09.07.2013