Что это за числа: 0x10, 0o10, 010, 0b10?
Что это за числа: 0x10, 0o10, 010, 0b10?
Что вы должны рассказать о каждом из чисел:
- В какой системе счисления находится каждое число из приведённого списка?
- Чему равняется каждое число из приведённого списка?
- Почему та или иная буква используется для конкретного числа?
Данный вопрос Числа, начинающиеся с нуля, в JavaScript не соответствует моим задачам как минимум по этим темам:
- Чему равняется каждое число из приведённого списка?
- Почему та или иная буква используется для конкретного числа?
Ответ @Grundy ссылается на документацию, но ПРЯМО в вопросе ответов, что это за числа нет.
0b100x10
Ответы (1 шт):
1. 0x10
Первое числа из приведённого списка это шестнадцатеричное число, оно равняется 16 т.к. в шестнадцатеричной системе счисления 10 = 16. Латинская буква x используется т.к. в названии есть, собственно говоря, сам x: hexadecimal. Подробнее в википедии.
2. 0o10/010
Эти два числа буквально равны друг другу т.к. оригинальные разработчики JavaScript решили так сделать. Эти числа из восьмеричной системы счисления, и равны 8, к слову, в JavaScript если попытаться получить восьмеричное число которое содержит 8 или 9, то тогда JavaScript выдаст ошибку. В 0o10 используется o т.к. на английском восьмеричный переводится как octal, а почему 010 сделали восьмеричной, мне не известно. Подробнее в википедии.
3. 0b10
А вот это число из двоичной системы счисления и равняется оно 2. Используется b т.к. двоичный переводится как binary. Если в таком числе использовать число которое не равняется 0 или 1, то тогда JavaScript выдаст ошибку. Подробнее на википедии
В виде таблицы:
| Число | Система счисления | Равняется | Происхождение |
|---|---|---|---|
| 0x10 | Шестнадцатеричная | 16 | Hexadecimal |
| 0o10/010 | Восьмеричная | 8 | Octal |
| 0b10 | Двоичная | 2 | Binary |