런 길이 부호화(RLE) 압축률 계산기
문자열을 런 길이 부호화로 압축해 결과와 압축률을 내고, 되풀어 원본이 나오는지까지 확인합니다. 되풀이가 없는 자료에서 오히려 커지는 것과 개수 한계 때문에 런이 쪼개지는 것도 함께 보여 줍니다.
2,000자까지 다룹니다.
개수를 1바이트에 담는 형식이 많아 보통 255입니다. 넘는 런은 쪼개집니다.
줄어든 비율
20%
10자가 8자로 줄었습니다.
부호화 결과
A4B3C2D1
런 목록
| 순서 | 글자 | 개수 | 시작 자리 | 적는 법 |
|---|---|---|---|---|
| 1 | A | 4 | 0 | A4 |
| 2 | B | 3 | 4 | B3 |
| 3 | C | 2 | 7 | C2 |
| 4 | D | 1 | 9 | D1 |
언제 쓸 만한가
「항상 쌍으로」 규약에서는 런 하나가 두 자리를 쓰므로, 평균 런 길이가 2를 넘어야 이득입니다. 배경이 넓은 그림, 스캔한 흑백 문서, 같은 타일이 반복되는 게임 맵에서는 잘 먹히고, 사진에는 맞지 않습니다. 팩스(그룹 3·4), BMP·PCX·TIFF의 RLE 방식이 모두 이 아이디어를 씁니다. 더 복잡한 자료에는 사전을 쓰는 LZ 계열이나 빈도를 쓰는 허프만이 어울립니다.
사용 방법
- 1압축할 문자열을 넣습니다. 예제 버튼으로 잘 줄어드는 자료와 최악의 자료를 견줘 볼 수 있습니다.
- 2길이 1인 런을 「A1」로 적을지 「A」로 적을지 고릅니다.
- 3한 런에 담을 수 있는 최대 개수를 정합니다. 개수를 1바이트에 담는 형식이면 255입니다.
- 4압축률과 함께 「되풀면 원본이 나오는가」를 확인합니다. 여기가 어긋나면 압축이 아니라 손실입니다.
자주 묻는 질문
같은 값이 이어지는 구간을 「값과 개수」 한 쌍으로 바꿉니다. AAAABBBCCD는 A4B3C2D1이 되어 10자가 8자로 줄어듭니다. 아이디어가 하나뿐이라 압축도 해제도 빠르고 구현이 짧아, 팩스와 BMP·PCX 같은 오래된 형식이 널리 썼습니다.
되풀이가 없기 때문입니다. 「항상 쌍으로」 규약에서는 런 하나가 두 자리를 차지하므로, 평균 런 길이가 2보다 짧으면 반드시 커집니다. 모든 글자가 다른 ABCDEF는 A1B1C1D1E1F1이 되어 정확히 두 배가 됩니다. 그래서 실제 형식들은 압축 결과가 더 크면 원본을 그대로 담는 「무압축」 표시를 따로 둡니다.
어디까지가 값이고 어디부터가 개수인지 알 수 없어 압축이 깨집니다. 「A3B」를 항상 쌍으로 적으면 A1·31·B1이 이어 붙어 A131B1이 되는데, 푸는 쪽은 131을 개수로 읽어 A가 131개인 문자열을 내놓습니다. 규약을 어떻게 잡아도 값과 개수를 같은 줄에 섞어 적는 한 이 모호함은 남으며, 실제 형식은 개수를 고정 길이 바이트에 담거나 이스케이프 바이트를 둡니다.
개수를 담는 칸의 크기만큼만 담고 나머지를 새 런으로 쪼갭니다. 개수를 1바이트에 담는다면 255가 한계이므로 같은 값이 600개 이어질 때 255+255+90 세 덩어리가 됩니다. 이 한계를 빼고 계산하면 압축률이 실제보다 좋게 나오므로, 이 계산기는 한계를 입력으로 노출합니다.
같은 값이 길게 이어지는 자료입니다. 배경이 넓은 그림, 스캔한 흑백 문서, 같은 타일이 되풀이되는 게임 맵이 대표적입니다. 반대로 사진처럼 이웃한 픽셀마다 값이 조금씩 흔들리는 자료에서는 런이 거의 생기지 않아 손해만 봅니다. 그런 자료에는 사전을 쓰는 LZ 계열이나 빈도를 쓰는 허프만이 어울립니다.
전송되지 않습니다. 모든 계산은 브라우저 안에서 이뤄지고, 입력값은 이 기기에만 남습니다.
알아두면 좋은 점
- 검증은 위키백과 RLE 문서의 표준 예제(W 12개, B 1개, W 12개, B 3개, W 24개, B 1개 → 원본 53자가 부호 15자)와 AAAABBBCCD → A4B3C2D1로 했습니다. 숫자 없는 무작위 문자열 2,000벌에서 압축한 뒤 되풀면 원본과 같은지도 대조했습니다.
- 압축 결과는 언제나 되풀어 원본과 맞춰 봅니다. 압축은 「줄이는 것」이 아니라 「줄였다가 되돌릴 수 있는 것」이므로, 압축률보다 이쪽이 먼저입니다.
- 길이는 글자 수로 셉니다. 실제 파일 크기는 인코딩에 따라 다른데, 한글은 UTF-8에서 한 글자가 3바이트라 글자 수와 바이트 수가 크게 어긋납니다.
- 개수 한계 때문에 쪼개진 런의 개수를 따로 셉니다. 실제 형식의 압축률을 가늠하려면 이 값을 반드시 넣어야 합니다.
- 2,000자까지 다룹니다. 실제 파일 압축률이 궁금하다면 gzip 크기 계산기가 더 가깝습니다.
함께 보면 좋은 도구
마지막 검증: 2026년 9월 1일 · 결과는 참고용 추정치입니다.