본문으로 건너뛰기
🛠️ToolsShed

텍스트 → 2진수 / 16진수 변환

텍스트를 2진수, 16진수, 8진수, 10진수로 변환합니다.

2진수
출력이 여기에 나타납니다...
16진수
출력이 여기에 나타납니다...
8진수
출력이 여기에 나타납니다...
10진수 (ASCII)
출력이 여기에 나타납니다...

이 도구 소개

텍스트가 어떻게 숫자로 인코딩되는지 이해하는 것은 컴퓨터 과학의 기본입니다. 입력하는 모든 문자(글자, 숫자, 기호, 악센트 문자)는 디지털 시스템에서의 저장과 전송을 위해 숫자 코드로 변환됩니다. 이 도구는 텍스트를 여러 숫자 형식으로 변환하여 그 과정을 드러냅니다: 이진법(밑수 2), 십육진법(밑수 16), 팔진법(밑수 8), 십진법(밑수 10). 컴퓨터는 본래 이진법을 사용하지만, 십육진법은 프로그래밍과 시스템 관리에서 컴팩트한 가독성으로 널리 선호됩니다.

컴퓨터 과학을 배우고 있든, 문자 인코딩 문제를 디버깅하든, 코딩 면접을 준비하든, 이 도구는 즉각적인 실용적 피드백을 제공합니다. 임의의 텍스트를 입력하면 4가지 모든 숫자 체계에서의 표현이 즉시 나타납니다. 인코딩된 값을 붙여넣어 프로세스를 역전시켜 원본 텍스트를 복구할 수도 있습니다. 유연한 구분 기호 옵션(공백, 대시 또는 구분 기호 없음)은 실제 애플리케이션, API, 교육 자료에서 만날 수 있는 다양한 형식과 호환됩니다.

이 변환기는 정보가 컴퓨팅에서 근본적으로 어떻게 표현되는지에 대한 이해를 심화시키며, 특히 학생, CTF 경쟁 참가자, 인코딩 문제를 해결 중인 웹 개발자, 그리고 디지털 통신 아래 계층에 대해 호기심 있는 사람들에게 가치 있습니다. 인간이 읽을 수 있는 텍스트와 기계 수준의 숫자 표현 간의 관계를 시각화함으로써 문자 집합, 유니코드, 그리고 현대 텍스트 인코딩 표준의 독창적인 설계에 대한 통찰력을 얻게 됩니다.

자주 묻는 질문

코드 구현

def text_to_binary(text: str, sep: str = " ") -> str:
    """Convert text to binary string (UTF-8 byte representation)."""
    return sep.join(f"{byte:08b}" for byte in text.encode("utf-8"))

def binary_to_text(binary: str) -> str:
    """Convert binary string (space-separated 8-bit groups) back to text."""
    groups = binary.strip().split()
    byte_values = [int(g, 2) for g in groups]
    return bytes(byte_values).decode("utf-8")

# Examples
original = "Hello, World!"
binary   = text_to_binary(original)
print(f"Text    : {original}")
print(f"Binary  : {binary}")
print(f"Decoded : {binary_to_text(binary)}")

# Extended ASCII and Unicode
print()
for char in ["A", "z", "0", "@", "é", "中"]:
    b = text_to_binary(char)
    print(f"  {char!r:6} -> {b}")

# Hexadecimal comparison
print()
for byte in "Hi".encode("utf-8"):
    print(f"  {byte:3d}  0x{byte:02X}  {byte:08b}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.