바이너리 번역기

텍스트와 바이너리 코드를 입력하는 대로 변환하고, 글자마다 비트를 보여 줍니다.

UTF-8·ASCII·UTF-16·옛 인코딩 · 7·8비트 묶음 자동 인식 · 브라우저에서 처리, 전송 없음

01001000 01101001

2자2바이트16비트

예시
바이트 줄
HU+00487248UTF-8

자릿값

1286432168421
01001000
648

64 + 8 = 72 → H

  • 1
  • 0
  • UTF-8 표시 비트

글자를 가리키거나 커서를 옮기면 아래에서 그 비트가 더해집니다.글자를 누르면 그 비트가 더해지는 모습을 볼 수 있습니다.

브라우저 안에서 변환하므로 입력한 내용은 어디에도 전송되지 않습니다.

바이너리 번역기 사용법

텍스트를 입력하면 바이너리 코드로, 바이너리 코드를 붙여넣으면 다시 텍스트로 바뀝니다. 이 바이너리 변환기는 입력하는 대로 바로 변환하며, 결과 위의 표시가 입력을 어떻게 읽었는지 알려 줍니다.

바이너리는 공백이 있든 없든, 7비트 묶음이든 앞에 0b가 붙어 있든 붙여넣을 수 있고, 48 69 같은 16진수, 72 105 같은 10진수 바이트, U+0048 같은 코드 포인트도 읽습니다. 출력은 이진수, 16진수, 10진수, 8진수 중에서 고르고, 구분자와 바이트당 8비트 또는 7비트를 정한 뒤 복사하거나 다운로드하세요. 아래 바이트 줄은 모든 글자의 바이트를 보여 주며, 하나를 선택하면 그 비트를 더해 볼 수 있습니다.

바이너리 번역기 화면: ‘Hi’를 바이너리 코드 01001000 01101001로 바꾸고 글자마다 비트와 자릿값을 표시바이너리 번역기 화면: ‘Hi’를 바이너리 코드 01001000 01101001로 바꾸고 글자마다 비트와 자릿값을 표시텍스트 또는 바이너리텍스트를 입력하거나 바이너리, 16진수, 10진수를 붙여넣으세요. 위쪽 표시가 어떻게 읽었는지 알려 주며, 직접 고를 수도 있습니다.결과이진수, 16진수, 10진수, 8진수 중 원하는 형식으로 보고, 복사하거나 다운로드하거나 링크로 공유합니다.인코딩기본은 UTF-8입니다. ASCII, UTF-16, 옛 코드 페이지에서는 같은 텍스트도 다른 바이트가 됩니다.바이트 줄모든 글자를 코드 포인트와 바이트로 보여 주며, UTF-8의 표시 비트는 따로 색을 입힙니다.비트 더하기바이트를 선택하면 자릿값이 보입니다. 64 + 8 = 72, 글자 H입니다.
처음 열었을 때의 화면으로, ‘Hi’가 입력되어 있습니다. 번호를 선택하면 각 부분이 하는 일을 볼 수 있습니다.

텍스트를 바이너리 코드로 변환하는 방법은?

글자마다 번호를 찾아 그 번호를 여덟 자리 이진수로 쓰고, 바이트를 이어 붙입니다. H는 72, 곧 01001000이므로 ‘Hi’는 01001000 01101001입니다.

컴퓨터는 텍스트를 공통의 표에 정해진 번호로 저장합니다. ASCII와 UTF-8에서 영어 알파벳, 숫자, 흔한 기호는 모두 1바이트, 즉 8비트로 쓴 0~255의 수입니다. 수를 이진수로 쓰려면 2의 거듭제곱으로 나눕니다. 72 = 64 + 8이므로 64와 8 자리의 비트는 1, 나머지는 0입니다. 영어 알파벳이 아닌 글자는 UTF-8에서 2~4바이트를 차지합니다.

텍스트에서 바이너리로, 한 단계씩UTF-8
  1. HU+0048= 720x481바이트01001000
  2. iU+0069= 1050x691바이트01101001
  3. éU+00E9= 2330xC30xA92바이트1100001110101001

Hi01001000 01101001

H와 i는 ASCII이므로 UTF-8은 각각 1바이트로 쓰고, 첫 비트는 채워 넣은 0입니다. é는 ASCII 밖에 있어 UTF-8에서 2바이트가 필요하며, 표시 비트(보라색)가 그 사실을 알려 줍니다. 출처: RFC 20, RFC 3629

바이너리 코드는 어떻게 읽나요? 바이너리 텍스트 변환 단계

비트를 8개씩 끊고, 1인 자리의 자릿값(128, 64, 32, 16, 8, 4, 2, 1)을 더한 뒤 그 번호의 글자를 찾습니다. 01001000은 64 + 8 = 72, 글자 H입니다.

바이트의 맨 왼쪽 비트는 128, 맨 오른쪽 비트는 1의 값을 가집니다. 0으로 시작하는 바이트는 평범한 ASCII이고, 11로 시작하는 바이트는 더 긴 UTF-8 글자의 시작, 10으로 시작하는 바이트는 그 뒷부분입니다. 앞자리 0을 빼고 쓰면 1001000 같은 7비트 묶음이 되는데, 이 번역기는 0을 알아서 채우고, 온전한 바이트가 될 수 없는 묶음이 있으면 알려 줍니다.

각 비트는 오른쪽 비트의 두 배 값을 가집니다128 · 64 · 32 · 16 · 8 · 4 · 2 · 1
1286432168421
01001000
648

64 + 8 = 72 → H

1286432168421
01101001
643281

64 + 32 + 8 + 1 = 105 → i

01001000 01101001Hi

1인 자리의 자릿값을 더한 뒤 그 수를 표에서 찾습니다. ASCII에서 72는 H, 105는 i이며, ASCII의 번호를 그대로 이어받은 UTF-8에서도 같습니다. 출처: nasa.gov, RFC 20

바이너리 알파벳: A부터 Z까지 이진수로

대문자는 A = 01000001부터 Z = 01011010까지, 소문자는 a = 01100001부터 z = 01111010까지입니다.

대문자와 소문자는 비트 하나, 곧 32 자리의 비트만 다릅니다. A는 01000001, a는 01100001입니다. 숫자는 0 = 00110000부터 9 = 00111001까지여서 마지막 네 비트가 곧 그 숫자이고, 공백은 00100000입니다. 이 부호들은 1963년에 처음 발표된 ASCII의 것이며(소문자는 1967년에 들어왔습니다), UTF-8도 그대로 이어받았습니다.

바이너리 알파벳ASCII, 8비트 바이트로 표기
  1. A01000001a01100001
  2. B01000010b01100010
  3. C01000011c01100011
  4. D01000100d01100100
  5. E01000101e01100101
  6. F01000110f01100110
  7. G01000111g01100111
  8. H01001000h01101000
  9. I01001001i01101001
  10. J01001010j01101010
  11. K01001011k01101011
  12. L01001100l01101100
  13. M01001101m01101101
  1. N01001110n01101110
  2. O01001111o01101111
  3. P01010000p01110000
  4. Q01010001q01110001
  5. R01010010r01110010
  6. S01010011s01110011
  7. T01010100t01110100
  8. U01010101u01110101
  9. V01010110v01110110
  10. W01010111w01110111
  11. X01011000x01111000
  12. Y01011001y01111001
  13. Z01011010z01111010
  • 32 자리 비트: 대문자는 0, 소문자는 1
  • 첫 비트: 언제나 0(ASCII는 7비트)
  • 1
A는 65, a는 97입니다. 모든 대문자와 그 소문자는 32 자리의 비트 하나만 다릅니다. ASCII는 7비트 부호(0~127)이며, 한 바이트에 담으면 첫 비트는 채워 넣은 0이 됩니다. 출처: RFC 20

Hello, Hi, I love you를 바이너리 코드로

‘Hello’를 바이너리로 쓰면 01001000 01100101 01101100 01101100 01101111, ‘Hi’는 01001000 01101001, ‘I love you’는 공백을 포함해 01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 01110101입니다.

ASCII와 UTF-8에서 영어 알파벳은 한 글자가 1바이트이므로 영어 단어의 바이트 수는 글자 수와 같고, 대문자, 소문자, 공백은 각각 고유한 부호를 가집니다. ‘SOS’는 01010011 01001111 01010011입니다. 맨 위에 아무 단어나 이름을 입력하면 바이너리가 나오고, 입력란 아래의 예시를 골라도 됩니다.

사람들이 많이 찾아보는 단어글자당 8비트
단어바이너리(ASCII와 UTF-8)비트
Hi01001000 0110100116
Hello01001000 01100101 01101100 01101100 0110111140
Hello World01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 0110010088
I love you01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 0111010180
SOS01010011 01001111 0101001124
Yes01011001 01100101 0111001124
No01001110 0110111116
OK01001111 0100101116
Love01001100 01101111 01110110 0110010132
Thank you01010100 01101000 01100001 01101110 01101011 00100000 01111001 01101111 0111010172
번역기가 계산한 값입니다. 여기의 글자는 모두 ASCII라서 ASCII와 UTF-8의 바이트가 같고, 단어 사이의 공백은 32, 00100000입니다. 출처: RFC 20

어떤 글자는 왜 16, 24, 32비트일까요? UTF-8 설명

UTF-8은 영어를 글자당 1바이트로, 나머지는 2~4바이트로 씁니다. é는 2바이트, €와 대부분의 한국어·중국어·일본어 글자는 3바이트, 이모지는 4바이트입니다.

첫 바이트가 글자의 길이를 알려 줍니다. 110으로 시작하면 2바이트, 1110이면 3바이트, 11110이면 4바이트 글자이고, 그 뒤의 바이트는 모두 10으로 시작합니다. 나머지 비트를 이어 붙인 것이 그 글자의 코드 포인트로, é는 U+00E9입니다. 하나로 보이는 이모지도 폭 없는 접합자(ZWJ)로 이은 여러 코드 포인트일 수 있어서, 가족 이모지 👨‍👩‍👧는 18바이트입니다. 맨 위의 바이트 줄은 표시 비트를 코드 포인트 자체의 비트와 다른 색으로 보여 줍니다.

UTF-8의 네 가지 바이트 구조RFC 3629
  1. 1바이트8비트AU+004141001000001U+0000 – U+007FASCII: 영어 알파벳, 숫자, 문장 부호
  2. 2바이트16비트éU+00E9C3 A9110110000111010101001U+0080 – U+07FF악센트가 붙은 라틴 문자, 키릴·그리스·히브리·아랍 문자
  3. 3바이트24비트한U+D55CED 95 9C11101110110110100101011010011100U+0800 – U+FFFF대부분의 한국어·중국어·일본어, 인도계 문자, €
  4. 4바이트32비트😀U+1F600F0 9F 98 801111011110000101001111110100110001010000000U+10000 – U+10FFFF이모지와 U+FFFF 위의 다른 글자
  • 표시 비트: 바이트 수, 또는 ‘이어짐’
  • 글자 자체의 비트
  • x: 글자의 비트가 들어갈 자리
첫 바이트 앞머리의 1이 바이트 수를 알려 주고(110 = 2, 1110 = 3, 11110 = 4), 뒤따르는 바이트는 모두 10으로 시작합니다. C0, C1과 F5부터 FF까지의 바이트는 올바른 UTF-8에 결코 나오지 않습니다. 출처: RFC 3629

ASCII, UTF-8, UTF-16 비교: 어떤 인코딩을 써야 할까요?

UTF-8을 쓰세요. 웹의 표준이며 웹사이트의 약 99%가 사용합니다(W3Techs, 2026년 10월). ASCII는 그중 7비트로 된 영어 전용 부분이고, UTF-16은 대부분의 글자에 2바이트를 씁니다.

같은 단어도 인코딩마다 비트가 다릅니다. ‘Hello’는 UTF-8과 ASCII에서 5바이트, UTF-16에서 10바이트, UTF-32에서 20바이트입니다. 글자당 16비트로 세는 문제라면 UTF-16을 뜻합니다. 오래된 파일은 러시아어의 KOI8-R과 Windows-1251, 서유럽의 Windows-1252, 일본어의 Shift_JIS 같은 옛 코드 페이지를 씁니다. 바이너리가 이상한 기호로 깨진다면 대개 인코딩 때문이니, 도구에서 다른 인코딩을 고르세요.

같은 텍스트를 인코딩마다바이트, 계산값

“Hello” 5자

  • UTF-85바이트 · 40비트
  • UTF-16BE10바이트 · 80비트
  • UTF-32BE20바이트 · 160비트
  • ASCII5바이트 · 40비트
  • EUC-KR5바이트 · 40비트

“안녕” 2자

  • UTF-86바이트 · 48비트
  • UTF-16BE4바이트 · 32비트
  • UTF-32BE8바이트 · 64비트
  • ASCII2자를 쓸 수 없음
  • EUC-KR4바이트 · 32비트

글자 하나의 바이트: 한 U+D55C

  • UTF-8ED 95 9C
  • UTF-16BED5 5C
  • UTF-32BE00 00 D5 5C
  • EUC-KRC7 D1
ASCII에는 128개 글자(0~127)가 있습니다. UTF-8은 ASCII를 1바이트로 유지하며 웹사이트의 약 99%가 사용합니다(W3Techs, 2026년 10월). UTF-16과 UTF-32는 라틴 글자 하나에 각각 2바이트와 4바이트를 쓰고, 빅 엔디안과 리틀 엔디안이 있습니다(여기서는 빅 엔디안). 출처: webstore.ansi.org, w3techs.com, unicode.org, encoding.spec.whatwg.org

65는 숫자일까, 텍스트일까? 10진수 이진수 변환

숫자로서 65는 이진수로 1000001입니다. 텍스트로 입력하면 6과 5라는 두 글자이고, 바이너리로는 00110110 00110101입니다.

수를 이진수로 바꾸려면 2로 거듭 나누고 나머지를 마지막부터 처음까지 거꾸로 읽습니다. 65를 나누면 나머지가 1, 0, 0, 0, 0, 0, 1이므로 1000001입니다. 한 바이트로 채우면 01000001이고, 이것은 대문자 A의 부호이기도 합니다. 맨 위에 숫자만 입력하면 그 값의 이진수와 각 자릿수 글자의 바이너리를 모두 보여 줍니다.

정답이 둘번역기는 둘 다 보여 줍니다

숫자로 본 65

수몫나머지
65÷ 2 =321
32÷ 2 =160
16÷ 2 =80
8÷ 2 =40
4÷ 2 =20
2÷ 2 =10
1÷ 2 =01

나머지를 아래에서 위로 읽습니다: 1000001

64 + 1 = 65 · 한 바이트로는 01000001 = A

텍스트로 본 ‘65’

  1. 6U+0036 = 5400110110
  2. 5U+0035 = 5300110101

두 글자, 두 바이트: 00110110 00110101

ASCII에서 숫자 0부터 9까지는 48부터 57까지이므로 ‘6’은 54입니다.

65를 입력하면 결과는 그 텍스트의 바이트이고, 그 아래 숫자 카드가 1000001, 0x41, 글자 A를 보여 줍니다. 출처: nasa.gov, RFC 20

Python, JavaScript 등으로 텍스트를 바이너리로 변환하는 법

텍스트를 UTF-8 바이트로 인코딩한 뒤 각 바이트를 여덟 자리 이진수로 씁니다. 어느 언어든 짧게 쓰는 방법이 있습니다.

여기 있는 예제는 모두 ‘Hi’를 01001000 01101001로 바꾸고 다시 읽어 들이며, 하나하나 실행해 출력을 확인했습니다. 모두 UTF-8을 쓰므로 이 번역기와 비트가 같습니다. 다른 인코딩으로 쓴 바이트는 비트가 달라지므로, 바꾸는 쪽과 되돌리는 쪽에서 같은 인코딩을 쓰세요.

Python
text = "Hi"
bits = " ".join(f"{b:08b}" for b in text.encode("utf-8"))
print(bits)
print(bytes(int(b, 2) for b in bits.split()).decode("utf-8"))
01001000 01101001 Hi

Python 3.14, 2026년 10월 25일에서 실행: 위의 줄이 출력됩니다.

JavaScript
const bits = [...new TextEncoder().encode("Hi")]
  .map((b) => b.toString(2).padStart(8, "0")).join(" ");
console.log(bits);
console.log(new TextDecoder().decode(
  Uint8Array.from(bits.split(" "), (b) => parseInt(b, 2))));
01001000 01101001 Hi

Node.js 22, 2026년 10월 25일에서 실행: 위의 줄이 출력됩니다.

Java
StringBuilder sb = new StringBuilder();
for (byte b : "Hi".getBytes(StandardCharsets.UTF_8))
    sb.append(String.format("%8s", Integer.toBinaryString(b & 0xFF))
        .replace(' ', '0')).append(' ');
String bits = sb.toString().trim();
System.out.println(bits);
String[] parts = bits.split(" ");
byte[] back = new byte[parts.length];
for (int i = 0; i < parts.length; i++) back[i] = (byte) Integer.parseInt(parts[i], 2);
System.out.println(new String(back, StandardCharsets.UTF_8));
01001000 01101001 Hi

Java 25, 2026년 10월 25일에서 실행: 위의 줄이 출력됩니다.

C# · .NET
using System.Text;

var bits = string.Join(" ", Encoding.UTF8.GetBytes("Hi")
    .Select(b => Convert.ToString(b, 2).PadLeft(8, '0')));
Console.WriteLine(bits);
Console.WriteLine(Encoding.UTF8.GetString(
    bits.Split(' ').Select(b => Convert.ToByte(b, 2)).ToArray()));
01001000 01101001 Hi

.NET 10, 2026년 10월 25일에서 실행: 위의 줄이 출력됩니다.

Go
var parts []string
for _, b := range []byte("Hi") {
	parts = append(parts, fmt.Sprintf("%08b", b))
}
bits := strings.Join(parts, " ")
fmt.Println(bits)

var back []byte
for _, p := range strings.Fields(bits) {
	n, _ := strconv.ParseUint(p, 2, 8)
	back = append(back, byte(n))
}
fmt.Println(string(back))
01001000 01101001 Hi

Go 1.25, 2026년 10월 25일에서 실행: 위의 줄이 출력됩니다.

모든 예제는 ‘Hi’를 UTF-8 바이트로 바꾼 뒤 8비트 이진수로 씁니다. JavaScript의 String.length는 UTF-16 단위를 세므로(이모지는 2), 바이트가 필요하면 TextEncoder를 쓰세요. 출처: encoding.spec.whatwg.org, tc39.es

바이너리 코드는 누가 발명했나요?

고트프리트 라이프니츠(Gottfried Leibniz)는 1703년 파리 과학 아카데미에 낸 논문에서 이진수를 설명했지만, 그보다 앞선 1623년에 프랜시스 베이컨(Francis Bacon)이 두 종류의 기호 다섯 개로 글자를 쓰는 방법을 발표했습니다. 컴퓨터가 쓰는 8비트 텍스트 부호는 ASCII(1963년)와 UTF-8(1992년)에서 발전했습니다.

1870년대 에밀 보도(Émile Baudot)의 전신 부호는 글자 하나를 켜짐·꺼짐 다섯 단위로 나타냈습니다. 1974년에는 아레시보(Arecibo) 전파 망원경이 1,679비트로 된 그림을 우주로 보냈고, 2021년 2월에는 NASA의 탐사 로버 퍼서비어런스(Perseverance)가 ‘Dare mighty things’(과감히 도전하라)를 바이너리로 새긴 낙하산을 펴고 화성에 착륙했습니다. 각 글자는 알파벳에서의 순서로 나타냈습니다.

바이너리의 역사, 1623년부터 2021년까지1600~2030년, 실제 비율
16001700180019002000123456789
  1. 1623

    베이컨의 두 글자 알파벳

    프랜시스 베이컨(Francis Bacon)은 a와 b 두 종류의 기호 다섯 개로 모든 글자를 썼습니다. 32가지 조합으로 당시 24자 알파벳을 모두 담았습니다. 1605년에 넌지시 알렸고 1623년에 전부 발표했습니다.

    aaaaa · aaaab · aaaba · aaabb … 2⁵ = 32

    출처: archive.org

  2. 1703

    라이프니츠의 이진 산술

    고트프리트 라이프니츠(Gottfried Leibniz)는 1703년 파리 과학 아카데미에 낸 논문에서 0과 1만으로 세는 법을 설명했습니다.

    1 · 10 · 11 · 100 · 101 · 110 · 111

    출처: gallica.bnf.fr

  3. 1870년대

    보도의 5단위 부호

    에밀 보도(Émile Baudot)의 인쇄 전신기는 글자 하나를 켜짐·꺼짐 다섯 단위로 보냈습니다. 그 후신인 ITA2는 지금도 ITU-T 권고(S.1)입니다.

    5 → 2⁵ = 32

    출처: itu.int

  4. 1948

    ‘비트’

    클로드 섀넌(Claude Shannon)의 A Mathematical Theory of Communication은 binary digit을 줄인 비트를 정보의 단위로 쓰며, 이 말은 John W. Tukey가 지었다고 밝힙니다.

    bit = binary digit

    출처: people.math.harvard.edu

  5. 1956

    ‘바이트’

    베르너 부흐홀츠(Werner Buchholz)가 1956년 6월 IBM에서 1~6비트 묶음을 가리키려고 이 말을 만들었고, IBM의 System/360(1964년)이 8비트로 굳혔습니다.

    1–6 bits → 8 bits

    출처: archive.computerhistory.org

  6. 1963

    ASCII

    미국규격협회(American Standards Association)가 1963년 6월 17일 ASCII를 승인했습니다. 7비트에 담은 128개 부호입니다.

    A = 1000001

    출처: sensitiveresearch.com

  7. 1974

    아레시보 메시지

    1974년 11월 16일 아레시보(Arecibo) 전파 망원경이 1,679비트를 우주로 보냈습니다. 1,679 = 73 × 23, 곧 소수 둘의 곱이라서 비트를 배열할 격자는 하나뿐이고, 그것이 그림이 됩니다.

    1,679 = 73 × 23

    23 × 73

    출처: news.cornell.edu

  8. 1992

    UTF-8

    켄 톰프슨(Ken Thompson)이 1992년 9월 롭 파이크(Rob Pike)가 세운 조건에 맞춰 벨 연구소의 Plan 9를 위해 UTF-8을 설계했습니다. ASCII는 1바이트로 두고 어떤 글자든 최대 4바이트로 씁니다.

    é = 11000011 10101001

    출처: cl.cam.ac.uk

  9. 2021

    화성에 남긴 메시지

    2021년 2월 18일 퍼서비어런스(Perseverance)의 낙하산은 주황색과 흰색 조각으로 ‘DARE MIGHTY THINGS’(과감히 도전하라)를 보여 주었습니다. 글자마다 알파벳에서의 순서를 바이너리로 나타낸 것입니다(A = 1).

    DARE → 4 1 18 5 → 100 1 10010 101

    출처: photojournal.jpl.nasa.gov

날짜와 수치는 1차 자료에서 가져왔습니다. 라이프니츠의 논문은 아카데미의 1703년 권(1705년 인쇄)에 실려 있고, 보도의 부호는 특정 연도가 아니라 1870년대의 것으로 봅니다.

바이너리 코드: 자주 묻는 질문

바이너리 코드란 무엇인가요?

바이너리 코드는 꺼짐과 켜짐, 두 상태를 가진 컴퓨터 회로에 맞춰 0과 1 두 숫자만으로 정보를 나타냅니다. 한 자리가 1비트이고, 8비트가 모이면 0~255의 수인 1바이트가 됩니다. 텍스트는 ASCII나 UTF-8 같은 인코딩을 거쳐 바이너리가 되며, 인코딩은 글자, 숫자, 기호마다 고유한 번호를 줍니다. 대문자 A는 65, 즉 01000001입니다.

바이너리를 영어 텍스트로 번역하려면 어떻게 하나요?

맨 위 입력란에 바이너리를 붙여넣으면 바로 영어 텍스트가 됩니다. 비트가 띄어져 있든, 붙어 있든, 7비트 묶음이든 상관없습니다. 손으로 하려면 비트를 8개씩 바이트로 끊고, 각 바이트에서 1인 자리의 자릿값을 더해 ASCII 표에서 그 번호를 찾으세요. 01001000은 72로 글자 H, 01101001은 105로 글자 i입니다.

‘hello’는 바이너리로 어떻게 쓰나요?

소문자 h로 시작하는 ‘hello’는 01101000 01100101 01101100 01101100 01101111입니다. 대문자 H로 시작하는 ‘Hello’는 01001000 01100101 01101100 01101100 01101111입니다. 바뀌는 것은 첫 바이트의 32 자리 비트 하나뿐입니다. ASCII와 UTF-8에서 글자 하나가 1바이트이므로 다섯 글자는 5바이트, 40비트입니다. ‘Hi’는 01001000 01101001입니다.

‘I love you’를 바이너리로 쓰면 어떻게 되나요?

‘I love you’는 01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 01110101입니다. 여덟 글자와 공백 두 개로 10바이트이며, 공백은 모두 00100000입니다. 바이트 사이를 띄우지 않고 쓰면 80비트가 한 줄로 이어지는데, 80은 8로 나누어떨어지므로 이 번역기는 그래도 읽어 냅니다. 맨 위에 직접 메시지를 입력해 바이너리를 확인하세요.

글자 하나는 몇 비트인가요?

ASCII와 UTF-8에서 영어 알파벳, 숫자, 흔한 기호는 8비트, 즉 1바이트입니다. ASCII 자체는 7비트면 충분하므로 바이트가 0으로 시작합니다. UTF-8에서 é 같은 대부분의 악센트 라틴 문자와 그리스·키릴·아랍 문자는 16비트, 한국어·중국어·일본어 글자와 ệ처럼 기호가 둘 붙은 베트남어 글자는 대개 24비트, 이모지는 32비트입니다. UTF-16에서는 대부분의 글자가 16비트입니다.

01001000 01101001은 무슨 뜻인가요?

‘Hi’라는 뜻입니다. 01001000은 64 + 8 = 72로 대문자 H, 01101001은 64 + 32 + 8 + 1 = 105로 소문자 i입니다. 맨 위 입력란에 바이너리를 붙여넣으면 번역기가 텍스트로 되돌리고, 바이트마다 값을 보여 주며, 온전한 바이트가 되지 않는 묶음은 따로 표시합니다.

공백 없이 바이너리를 붙여넣어도 되나요?

네. 0과 1이 이어진 줄은 길이가 8로 나누어떨어지면 8비트 바이트로, 그렇지 않고 7로 나누어떨어지면 앞자리 0이 모두 빠진 것으로 보고 7비트 묶음으로 끊습니다. 둘 다 가능하면 읽을 수 있는 텍스트가 나오는 쪽을 택하고 다른 쪽도 제안합니다. 쉼표, 줄 바꿈, 세로 막대, 0b 접두사도 읽습니다.

이진수 10101은 무슨 뜻인가요?

수로 보면 이진수 10101은 16 + 4 + 1 = 21(10진수)입니다. 한 바이트 00010101로 보면 ASCII 제어 문자 NAK인데, 인쇄되는 모양이 없으므로 글자가 아닙니다. 반대로 평범한 10진수 10101(만 백일)로 읽으면 이진수로 10011101110101입니다. 맨 위의 숫자 카드가 두 가지 읽기를 모두 보여 줍니다.

바이너리가 �처럼 이상한 기호로 깨지는 이유는 무엇인가요?

대개 바이트가 다른 인코딩으로 쓰였거나 비트가 빠졌기 때문입니다. �는 그 자리의 바이트가 올바른 UTF-8이 아니라는 뜻이며, 시작 바이트 없는 연속 바이트나 잘린 글자 같은 이유를 바이트 줄이 보여 줍니다. 오래된 러시아어 파일은 흔히 KOI8-R이나 Windows-1251을 쓰며, 그렇게 깔끔하게 읽히면 번역기가 제안합니다. 모든 묶음이 8비트인지도 확인하세요.

ASCII는 7비트인가요, 8비트인가요?

ASCII는 0부터 127까지 번호가 붙은 128개 글자의 7비트 부호입니다. 컴퓨터는 각 글자를 8비트 바이트에 저장하므로, 바이너리로 쓴 ASCII 텍스트는 앞에 0이 붙습니다. A는 7비트로 1000001, 8비트로 01000001입니다. 나머지 128개의 바이트 값은 Windows-1252 같은 8비트 코드 페이지나 UTF-8의 긴 글자에 쓰입니다.

65는 이진수로 무엇인가요?

숫자 65는 이진수로 1000001, 한 바이트로 채우면 01000001입니다. 64 + 1 = 65이기 때문입니다. 문자 부호로서 65는 ASCII와 UTF-8에서 대문자 A입니다. 두 자리 숫자로 입력한 텍스트 ‘65’는 00110110 00110101입니다. 맨 위에 아무 숫자나 입력하면 이진수, 16진수, 8진수 형태를 볼 수 있습니다.

입력한 텍스트가 서버로 전송되나요?

아닙니다. 번역은 브라우저 안에서 이루어지므로, 입력하거나 붙여넣은 내용은 어떤 인코딩이나 형식을 고르든 기기를 떠나지 않고 업로드되지 않습니다. 주소 표시줄에는 설정만 남고 텍스트는 남지 않습니다. 다만 ‘링크 복사’로 만든 링크는 주소에 텍스트를 담으므로, 공유할 생각일 때만 쓰세요.

부족한 점이 있습니까?기능 또는 새 도구 제안하기