ASCII → 텍스트
ASCII 코드 범위 시각화
| DEC | HEX | CHAR | DESCRIPTION | |
|---|---|---|---|---|
| 0 | 0x00 | NUL | Null character | |
| 1 | 0x01 | SOH | Start of Heading | |
| 2 | 0x02 | STX | Start of Text | |
| 3 | 0x03 | ETX | End of Text | |
| 4 | 0x04 | EOT | End of Transmission | |
| 5 | 0x05 | ENQ | Enquiry | |
| 6 | 0x06 | ACK | Acknowledge | |
| 7 | 0x07 | BEL | Bell | |
| 8 | 0x08 | BS | Backspace | |
| 9 | 0x09 | TAB | Horizontal Tab | |
| 10 | 0x0A | LF | Line Feed | |
| 11 | 0x0B | VT | Vertical Tab | |
| 12 | 0x0C | FF | Form Feed | |
| 13 | 0x0D | CR | Carriage Return | |
| 14 | 0x0E | SO | Shift Out | |
| 15 | 0x0F | SI | Shift In | |
| 16 | 0x10 | DLE | Data Link Escape | |
| 17 | 0x11 | DC1 | Device Control 1 | |
| 18 | 0x12 | DC2 | Device Control 2 | |
| 19 | 0x13 | DC3 | Device Control 3 | |
| 20 | 0x14 | DC4 | Device Control 4 | |
| 21 | 0x15 | NAK | Negative Acknowledge | |
| 22 | 0x16 | SYN | Synchronous Idle | |
| 23 | 0x17 | ETB | End of Trans. Block | |
| 24 | 0x18 | CAN | Cancel | |
| 25 | 0x19 | EM | End of Medium | |
| 26 | 0x1A | SUB | Substitute | |
| 27 | 0x1B | ESC | Escape | |
| 28 | 0x1C | FS | File Separator | |
| 29 | 0x1D | GS | Group Separator | |
| 30 | 0x1E | RS | Record Separator | |
| 31 | 0x1F | US | Unit Separator | |
| 32 | 0x20 | ␣ | Space | |
| 33 | 0x21 | ! | Exclamation mark | |
| 34 | 0x22 | " | Double quote | |
| 35 | 0x23 | # | Number sign | |
| 36 | 0x24 | $ | Dollar sign | |
| 37 | 0x25 | % | Percent sign | |
| 38 | 0x26 | & | Ampersand | |
| 39 | 0x27 | ' | Single quote | |
| 40 | 0x28 | ( | Left parenthesis | |
| 41 | 0x29 | ) | Right parenthesis | |
| 42 | 0x2A | * | Asterisk | |
| 43 | 0x2B | + | Plus sign | |
| 44 | 0x2C | , | Comma | |
| 45 | 0x2D | - | Hyphen/Minus | |
| 46 | 0x2E | . | Period | |
| 47 | 0x2F | / | Slash | |
| 48 | 0x30 | 0 | Digit 0 | |
| 49 | 0x31 | 1 | Digit 1 | |
| 50 | 0x32 | 2 | Digit 2 | |
| 51 | 0x33 | 3 | Digit 3 | |
| 52 | 0x34 | 4 | Digit 4 | |
| 53 | 0x35 | 5 | Digit 5 | |
| 54 | 0x36 | 6 | Digit 6 | |
| 55 | 0x37 | 7 | Digit 7 | |
| 56 | 0x38 | 8 | Digit 8 | |
| 57 | 0x39 | 9 | Digit 9 | |
| 58 | 0x3A | : | Colon | |
| 59 | 0x3B | ; | Semicolon | |
| 60 | 0x3C | < | Less than | |
| 61 | 0x3D | = | Equal sign | |
| 62 | 0x3E | > | Greater than | |
| 63 | 0x3F | ? | Question mark | |
| 64 | 0x40 | @ | At sign | |
| 65 | 0x41 | A | Uppercase A | |
| 66 | 0x42 | B | Uppercase B | |
| 67 | 0x43 | C | Uppercase C | |
| 68 | 0x44 | D | Uppercase D | |
| 69 | 0x45 | E | Uppercase E | |
| 70 | 0x46 | F | Uppercase F | |
| 71 | 0x47 | G | Uppercase G | |
| 72 | 0x48 | H | Uppercase H | |
| 73 | 0x49 | I | Uppercase I | |
| 74 | 0x4A | J | Uppercase J | |
| 75 | 0x4B | K | Uppercase K | |
| 76 | 0x4C | L | Uppercase L | |
| 77 | 0x4D | M | Uppercase M | |
| 78 | 0x4E | N | Uppercase N | |
| 79 | 0x4F | O | Uppercase O | |
| 80 | 0x50 | P | Uppercase P | |
| 81 | 0x51 | Q | Uppercase Q | |
| 82 | 0x52 | R | Uppercase R | |
| 83 | 0x53 | S | Uppercase S | |
| 84 | 0x54 | T | Uppercase T | |
| 85 | 0x55 | U | Uppercase U | |
| 86 | 0x56 | V | Uppercase V | |
| 87 | 0x57 | W | Uppercase W | |
| 88 | 0x58 | X | Uppercase X | |
| 89 | 0x59 | Y | Uppercase Y | |
| 90 | 0x5A | Z | Uppercase Z | |
| 91 | 0x5B | [ | Left square bracket | |
| 92 | 0x5C | \ | Backslash | |
| 93 | 0x5D | ] | Right square bracket | |
| 94 | 0x5E | ^ | Caret | |
| 95 | 0x5F | _ | Underscore | |
| 96 | 0x60 | ` | Grave accent | |
| 97 | 0x61 | a | Lowercase a | |
| 98 | 0x62 | b | Lowercase b | |
| 99 | 0x63 | c | Lowercase c | |
| 100 | 0x64 | d | Lowercase d | |
| 101 | 0x65 | e | Lowercase e | |
| 102 | 0x66 | f | Lowercase f | |
| 103 | 0x67 | g | Lowercase g | |
| 104 | 0x68 | h | Lowercase h | |
| 105 | 0x69 | i | Lowercase i | |
| 106 | 0x6A | j | Lowercase j | |
| 107 | 0x6B | k | Lowercase k | |
| 108 | 0x6C | l | Lowercase l | |
| 109 | 0x6D | m | Lowercase m | |
| 110 | 0x6E | n | Lowercase n | |
| 111 | 0x6F | o | Lowercase o | |
| 112 | 0x70 | p | Lowercase p | |
| 113 | 0x71 | q | Lowercase q | |
| 114 | 0x72 | r | Lowercase r | |
| 115 | 0x73 | s | Lowercase s | |
| 116 | 0x74 | t | Lowercase t | |
| 117 | 0x75 | u | Lowercase u | |
| 118 | 0x76 | v | Lowercase v | |
| 119 | 0x77 | w | Lowercase w | |
| 120 | 0x78 | x | Lowercase x | |
| 121 | 0x79 | y | Lowercase y | |
| 122 | 0x7A | z | Lowercase z | |
| 123 | 0x7B | { | Left curly brace | |
| 124 | 0x7C | | | Vertical bar | |
| 125 | 0x7D | } | Right curly brace | |
| 126 | 0x7E | ~ | Tilde | |
| 127 | 0x7F | DEL | Delete |
표시: 128제어문자: 33출력문자: 95
ASCII Table은 모든 ASCII 문자(0-127)의 완전한 참조표와 양방향 변환기를 제공합니다.
📊 ASCII 문자표 보기
• 전체 ASCII 문자표에서 각 문자의 10진수, 16진수, 문자, 설명을 확인하세요
• 검색창에 숫자, 문자, 또는 설명을 입력하여 특정 문자를 찾을 수 있습니다
• 제어 문자는 주황색, 출력 가능한 문자는 녹색으로 구분됩니다
• 테이블의 행을 클릭하면 해당 정보가 클립보드에 복사됩니다
🔍 필터링
• ALL: 모든 ASCII 문자 표시 (0-127)
• CONTROL: 제어 문자만 표시 (0-31, 127)
• PRINTABLE: 출력 가능한 문자만 표시 (32-126)
✍️ 텍스트를 ASCII 코드로 변환
• 좌측 상단 "TEXT TO ASCII" 섹션에 텍스트를 입력하세요
• "CONVERT TO ASCII" 버튼을 클릭하면 각 문자의 ASCII 코드가 표시됩니다
• 예: "Hello" → "72, 101, 108, 108, 111"
• 복사 버튼으로 결과를 클립보드에 복사할 수 있습니다
🔢 ASCII 코드를 텍스트로 변환
• 우측 상단 "ASCII TO TEXT" 섹션에 ASCII 코드를 입력하세요
• 쉼표나 공백으로 코드를 구분하여 입력하세요
• "CONVERT TO TEXT" 버튼을 클릭하면 원본 텍스트로 변환됩니다
• 예: "72, 101, 108, 108, 111" → "Hello"
📋 복사 기능
• 각 테이블 행의 복사 버튼을 클릭하여 전체 정보 복사
• 변환 결과에서 복사 버튼으로 결과만 복사
• 클릭 한 번으로 빠르게 필요한 정보를 가져갈 수 있습니다
ASCII(American Standard Code for Information Interchange)는 텍스트를 표현하는 가장 기본적인 문자 인코딩 표준입니다.
📖 ASCII의 역사
ASCII는 1963년 미국 표준 협회(ASA, 현재의 ANSI)에서 제정한 문자 인코딩 표준입니다. 초기 컴퓨터 시스템과 통신 장비 간에 텍스트 데이터를 교환하기 위해 개발되었으며, 7비트를 사용하여 128개의 문자를 표현합니다.
1967년과 1986년에 개정이 이루어졌으며, 현재까지도 대부분의 현대 문자 인코딩 시스템(UTF-8, ISO-8859 등)의 기초가 되고 있습니다. ASCII의 0-127 범위는 거의 모든 문자 인코딩에서 동일하게 유지됩니다.
🔢 ASCII 코드 구조
ASCII는 128개의 문자를 다음과 같이 분류합니다:
제어 문자 (0-31, 127): 33개
• 인쇄되지 않는 특수 제어 문자
• 예: NULL(0), TAB(9), LF(10), CR(13), ESC(27), DEL(127)
• 텍스트 포맷팅, 장치 제어, 통신 제어에 사용
출력 가능한 문자 (32-126): 95개
• 공백 및 인쇄 가능한 문자
• 숫자: 0-9 (48-57)
• 대문자: A-Z (65-90)
• 소문자: a-z (97-122)
• 특수 문자: !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
💡 주요 사용 사례
• 프로그래밍: 소스 코드는 주로 ASCII 문자로 작성됩니다
• 데이터 교환: CSV, JSON, XML 등의 텍스트 형식
• 통신 프로토콜: HTTP, SMTP, FTP 등의 명령어
• 파일 인코딩: 텍스트 파일의 기본 인코딩
• 터미널/콘솔: 명령줄 인터페이스
🔧 ASCII 확장
ASCII는 7비트만 사용하므로 128개의 문자만 표현 가능합니다. 이를 확장한 버전들:
• Extended ASCII (ISO-8859): 8비트 사용, 128-255 추가 문자
• UTF-8: ASCII 호환 유니코드 인코딩, 모든 언어 지원
• Windows-1252: Windows에서 사용하는 확장 ASCII
• UTF-16, UTF-32: 더 넓은 범위의 유니코드 문자 지원
📊 실용적인 활용
• 문자 비교: 대소문자 변환 (A=65, a=97, 차이=32)
• 숫자 변환: '0'=48, '9'=57, 숫자로 변환 시 48 빼기
• 정렬: ASCII 코드 순서로 자동 정렬
• 검증: 입력 문자가 허용 범위 내인지 확인
⚠️ 주의사항
• ASCII는 영어와 기본 기호만 지원합니다
• 한글, 한자, 아랍어 등은 UTF-8 등의 확장 인코딩 필요
• 제어 문자는 화면에 출력되지 않거나 특수 동작을 수행합니다
• 플랫폼마다 줄바꿈 문자가 다를 수 있습니다 (LF vs CRLF)
💡 ASCII 활용 가이드
1. 프로그래밍에서의 활용
대소문자 변환: 대문자와 소문자의 ASCII 코드 차이는 32입니다. 'A'(65)와 'a'(97)의 차이를 이용하여 간단히 변환할 수 있습니다.
• 소문자로: char | 32 (비트 OR)
• 대문자로: char & ~32 (비트 AND)
2. 문자 타입 판별
ASCII 코드 범위를 이용한 빠른 검증:
• 숫자: 48 ≤ code ≤ 57
• 대문자: 65 ≤ code ≤ 90
• 소문자: 97 ≤ code ≤ 122
• 공백: code === 32
3. 정렬과 비교
ASCII 코드는 자연스러운 정렬 순서를 제공합니다:
• 숫자 < 대문자 < 소문자
• 문자열 비교 시 사전순 정렬 가능
• 데이터베이스 쿼리 최적화에 활용
4. 데이터 검증
입력 데이터의 유효성 검사:
• 허용된 ASCII 범위 내인지 확인
• 특수 문자 필터링
• SQL Injection 방지
• XSS 공격 방지
5. 파일 인코딩
텍스트 파일 작업 시:
• ASCII 전용 파일은 파일 크기가 작고 호환성이 높습니다
• UTF-8은 ASCII와 하위 호환됩니다
• BOM(Byte Order Mark) 주의
6. 제어 문자 활용
특수 제어 문자의 실용적 사용:
• \n (LF, 10): 줄바꿈
• \r (CR, 13): 캐리지 리턴
• \t (TAB, 9): 탭 문자
• \0 (NULL, 0): 문자열 종료 표시 (C/C++)
7. URL 인코딩
URL에서 안전하지 않은 ASCII 문자:
• 공백(32) → %20 또는 +
• 특수문자는 퍼센트 인코딩 필요
• 영문자와 숫자는 인코딩 불필요
8. 바이너리 ↔ 텍스트 변환
• ASCII를 이용한 이진 데이터 표현
• Hex dump 생성 및 분석
• 디버깅 시 메모리 내용 확인
9. 레거시 시스템 호환
오래된 시스템과 통신 시:
• 7비트 ASCII만 지원하는 경우 주의
• EBCDIC → ASCII 변환 필요할 수 있음
• 줄바꿈 문자 차이 (Unix: LF, Windows: CRLF, Mac: CR)
10. 성능 최적화
• ASCII 범위 검사는 매우 빠름
• 문자 타입 판별 시 isalpha(), isdigit() 대신 범위 검사
• 대용량 텍스트 처리 시 ASCII 가정으로 속도 향상