Конвертер систем счисления
Конвертируйте числа между двоичной, восьмеричной, десятичной и шестнадцатеричной системами.
Конвертер систем счисления переводит целые числа между четырьмя наиболее распространёнными в вычислениях системами счисления: десятичной (base 10), двоичной (base 2), восьмеричной (base 8) и шестнадцатеричной (base 16). Каждая система представляет одно значение разным набором цифр и предпочтительна в конкретных контекстах.
Введите число в любое из четырёх полей — инструмент мгновенно заполнит остальные три. Двоичный вывод группирует цифры в тетрады (4 бита) для удобства чтения, а шестнадцатеричный вывод отображается в верхнем регистре.
Понимание перевода между системами счисления необходимо для чтения RGB-цветовых кодов, интерпретации прав файлов Unix, работы с побитовыми операциями и чтения дампов памяти или дизассемблированного кода.
Часто задаваемые вопросы
Реализация кода
# Python: built-in base conversion
# Decimal → other bases
n = 255
print(bin(n)) # '0b11111111' (binary)
print(oct(n)) # '0o377' (octal)
print(hex(n)) # '0xff' (hex)
# Other bases → decimal using int(string, base)
print(int("ff", 16)) # 255 (hex → decimal)
print(int("11111111", 2)) # 255 (binary → decimal)
print(int("377", 8)) # 255 (octal → decimal)
# Arbitrary base → decimal (base 36 example)
print(int("z", 36)) # 35
# Decimal → arbitrary base string
def to_base(n: int, base: int) -> str:
digits = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
if n == 0:
return "0"
result = []
while n:
result.append(digits[n % base])
n //= base
return "".join(reversed(result))
print(to_base(255, 16)) # FF
print(to_base(255, 2)) # 11111111Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.