Bảng mã ASCII đầy đủ 0–255: thập phân, hex, nhị phân, ký tự điều khiển
Bảng mã ASCII này liệt kê đủ 128 mã chuẩn từ 0 đến 127, gồm 33 ký tự điều khiển có tên viết tắt, ý nghĩa và 95 ký tự in được, kèm cột thập phân (Dec), thập lục phân (Hex), bát phân (Oct), nhị phân (Bin) và thực thể HTML. Phần mở rộng 128–255 hiển thị theo Windows-1252 hoặc ISO-8859-1 và ghi rõ chỗ hai bảng khác nhau. Bạn có thể tìm nhanh theo ký tự, số mã, tên như LF, ESC, đổi văn bản sang mã và đổi dãy mã ngược lại thành chữ.
Tính năng nổi bật
- Bảng ASCII chuẩn 0–127 theo ANSI X3.4-1986, đủ 5 cột Dec, Hex, Oct, Bin và ký tự
- 33 ký tự điều khiển (0–31 và 127) có tên viết tắt (NUL, LF, CR, ESC, DEL…), tên tiếng Anh, giải thích tiếng Việt, ký hiệu dấu mũ (^@, ^C) và chuỗi thoát như \n, \t, \r
- Bảng mở rộng 128–255 chọn được Windows-1252 hoặc ISO-8859-1, có cảnh báo rõ hai bảng chỉ khác nhau ở đoạn 128–159
- Hiện 5 mã không định nghĩa của Windows-1252 và tên ký tự điều khiển C1 của ISO-8859-1, kèm mã Unicode U+ của mỗi ký tự mở rộng
- Cột thực thể HTML: tên thực thể (©, é, €…) khi có, luôn kèm dạng số &#N;
- Ô tìm kiếm nhận ký tự (A), số thập phân (65), hex có tiền tố 0x (0x41), nhị phân 8 bit, tên viết tắt (LF) hoặc chữ trong mô tả (tab)
- Bấm vào ký tự trong bảng để sao chép
- Đổi văn bản sang dãy mã thập phân, hex, nhị phân hoặc bát phân; chữ có dấu tiếng Việt hiện mã Unicode và các byte UTF-8
- Đổi dãy mã ngược thành văn bản, chấp nhận tiền tố 0x, \x, U+, 0b, 0o, &#, phân cách bằng dấu cách hoặc dấu phẩy, báo mã không hợp lệ
- Nút Sao chép mã và Sao chép văn bản cho kết quả chuyển đổi
Khi nào cần tra bảng mã ASCII
Học sinh lớp 10 và sinh viên năm nhất gặp bảng mã ASCII khi học biểu diễn thông tin trong máy tính và cần tra nhanh mã của chữ cái, chữ số để làm bài đổi hệ cơ số. Lập trình viên tra mã ASCII khi viết code xử lý chuỗi, đọc dữ liệu nhị phân, gỡ lỗi file có ký tự lạ như CR LF thừa, ký tự NUL, hay khi viết biểu thức chính quy cần mã hex. Người làm web cần thực thể HTML cho ký tự đặc biệt, còn kỹ thuật viên làm việc với cổng serial, máy in, thiết bị công nghiệp cần biết ý nghĩa của STX, ETX, ACK, NAK. Trang này gom tất cả vào một bảng có ô tìm kiếm, kèm công cụ đổi qua lại giữa chữ và mã, nên không phải mở nhiều tài liệu.
Lợi ích khi sử dụng
- Tra được cả mã chuẩn lẫn mã mở rộng trong một trang
- Ký tự điều khiển có giải thích tiếng Việt, không chỉ tên viết tắt
- Có đủ bốn hệ cơ số cho bài tập đổi hệ đếm
- Có thực thể HTML để dán thẳng vào mã nguồn web
- Phân biệt rõ ASCII với Unicode khi gõ chữ tiếng Việt
- Tìm kiếm tức thì, không phải cuộn cả bảng
Cách dùng bảng mã ASCII
- 1Mặc định trang hiện ASCII chuẩn 0–127. Bấm Mở rộng 128–255 để xem nửa trên, rồi chọn Bảng mã Windows-1252 hoặc ISO-8859-1.
- 2Gõ vào ô Tìm ký tự: một ký tự (A), số thập phân (65), hex (0x41), tên viết tắt (LF, ESC) hoặc một từ trong mô tả.
- 3Đọc các cột Dec, Hex, Oct, Bin, Ký tự, HTML và Mô tả; bấm vào ô ký tự để sao chép ký tự đó.
- 4Ở khung Văn bản sang mã, gõ hoặc dán văn bản, chọn Thập phân, Hex, Nhị phân hoặc Bát phân, rồi bấm Sao chép mã.
- 5Ở khung Mã sang văn bản, dán dãy mã cách nhau bằng dấu cách hoặc dấu phẩy, chọn đúng cơ số, đọc văn bản và bấm Sao chép văn bản.
ASCII là gì
ASCII (American Standard Code for Information Interchange, Bộ mã chuẩn Mỹ dùng trao đổi thông tin) là bảng mã gán cho mỗi ký tự một số từ 0 đến 127. Bảng được công bố lần đầu năm 1963, sửa đổi lớn năm 1967 và phiên bản cuối là ANSI X3.4-1986. Vì chỉ có 128 mã, mỗi ký tự ASCII cần 7 bit; trong máy tính hiện đại nó thường được lưu trong một byte 8 bit với bit cao nhất bằng 0. Bảng gồm 33 ký tự điều khiển không in ra màn hình (mã 0–31 và 127) và 95 ký tự in được (mã 32–126): dấu cách, chữ số, chữ cái Latin hoa và thường, dấu câu và ký hiệu như @ # $ % &. ASCII là nền tảng của hầu hết bảng mã sau này: 128 mã đầu của ISO-8859-1, Windows-1252 và Unicode đều trùng ASCII, và văn bản chỉ gồm ký tự ASCII khi lưu bằng UTF-8 cho ra đúng các byte như ASCII.
Quy luật dễ nhớ trong bảng mã ASCII
Chữ số 0 đến 9 có mã 48 đến 57 (hex 30 đến 39), nên lấy mã trừ 48 là ra giá trị của chữ số. Chữ hoa A đến Z có mã 65 đến 90 (hex 41 đến 5A), chữ thường a đến z có mã 97 đến 122 (hex 61 đến 7A). Chữ hoa và chữ thường cùng một chữ cách nhau đúng 32, tức chỉ khác nhau ở bit thứ 5: A là 01000001, a là 01100001. Vì vậy nhiều chương trình đổi hoa thường bằng cách bật tắt bit này. Dấu cách là 32 (hex 20), ký tự in được cuối cùng là dấu ngã ~ ở 126, và 127 là DEL. Các ký tự điều khiển tương ứng tổ hợp phím Ctrl với chữ cái có mã lớn hơn 64: Ctrl+A là 1, Ctrl+C là 3, Ctrl+[ là 27 (ESC), đây là nguồn gốc của ký hiệu dấu mũ ^A, ^C, ^[ mà bảng ghi kèm.
Ký tự điều khiển: LF, CR, TAB, NUL và những mã ít gặp
Ký tự điều khiển sinh ra từ thời máy điện báo và máy in kim, để ra lệnh cho thiết bị thay vì in chữ. Nhiều mã vẫn được dùng hằng ngày. LF (10, \n) là ký tự xuống dòng trên Linux và macOS; Windows xuống dòng bằng cặp CR LF (13 10, \r\n); Mac OS cổ điển trước bản X dùng CR. Khác biệt này giải thích vì sao file văn bản mở trên hệ điều hành khác có thể dính dòng hoặc thừa ký tự ^M. HT (9, \t) là phím Tab. NUL (0) đánh dấu kết thúc chuỗi trong ngôn ngữ C. ESC (27) mở đầu các chuỗi điều khiển màu chữ, vị trí con trỏ trong terminal. BEL (7) làm máy kêu bíp. Trong giao tiếp với máy in hóa đơn, máy cân, đầu đọc mã vạch qua cổng serial, bạn vẫn gặp STX (2) và ETX (3) bao quanh gói dữ liệu, ACK (6) và NAK (21) để xác nhận hoặc báo lỗi, XON (DC1, 17) và XOFF (DC3, 19) để điều khiển luồng.
ASCII mở rộng: vì sao không có một bảng duy nhất
Byte có 8 bit nên còn 128 mã từ 128 đến 255 chưa dùng. Mỗi hãng, mỗi vùng đã lấp phần này theo cách riêng, nên cụm từ ASCII mở rộng chỉ có nghĩa khi đi kèm tên bảng mã. Máy IBM PC đời đầu dùng Code Page 437 với ký tự kẻ khung, ký tự Hy Lạp; nhiều sách cũ in bảng này dưới tên ASCII mở rộng. ISO-8859-1 (Latin-1) dành 128–159 cho ký tự điều khiển C1 và 160–255 cho chữ có dấu Tây Âu. Windows-1252 của Microsoft giữ nguyên 160–255 như ISO-8859-1 nhưng dùng đoạn 128–159 cho ký tự in được như € (128), dấu nháy cong ‘ ’ “ ” (145–148), gạch ngang – — (150, 151), ™ (153), để trống 5 mã 129, 141, 143, 144, 157. Theo Tiêu chuẩn mã hóa WHATWG mà trình duyệt tuân theo, trang web khai báo ISO-8859-1 thực tế được giải mã như Windows-1252. Trang này không hiển thị Code Page 437; nếu đề bài hay tài liệu của bạn dùng bảng có ký tự kẻ khung, đó là bảng khác.
ASCII, Unicode và chữ tiếng Việt
ASCII không có chữ có dấu tiếng Việt. Trước khi Unicode phổ biến, người dùng Việt Nam dùng các bảng mã 8 bit như TCVN3 (ABC) hay VNI, đặt chữ có dấu vào vùng mã từ 128 trở lên hoặc ghép từ nhiều ký tự, kèm phông chữ riêng; mở văn bản sai phông là ra ký tự lạ. Ngày nay chữ tiếng Việt dùng Unicode, nơi mỗi ký tự có một mã gọi là code point, ví dụ ệ là U+1EC7 (7.879 thập phân), đ là U+0111. Khi lưu thành file bằng UTF-8, một chữ có dấu chiếm 2 hoặc 3 byte: ệ là E1 BB 87. Khung Văn bản sang mã của trang này phân biệt rõ: ký tự ASCII hiện mã ASCII, ký tự khác hiện code point Unicode và các byte UTF-8, để bạn không nhầm khi làm bài hoặc khi gỡ lỗi dữ liệu.
Lấy mã ASCII trong Python, JavaScript, C và Excel
Trong Python, ord('A') trả về 65, chr(65) trả về 'A', hex(ord('A')) cho '0x41', bin(65) cho '0b1000001', còn 'A'.encode('ascii') cho chuỗi byte. Trong JavaScript, 'A'.charCodeAt(0) hoặc 'A'.codePointAt(0) trả về 65, String.fromCharCode(65) trả về 'A'; với ký tự ngoài mặt phẳng cơ bản như emoji nên dùng codePointAt và String.fromCodePoint. Trong C và C++, kiểu char lưu đúng mã số, nên (int)'A' là 65 và 'a' - 'A' bằng 32. Trong Excel và Google Sheets, hàm CODE và CHAR làm việc theo bảng mã của hệ thống (trên Windows thường là Windows-1252), còn UNICODE và UNICHAR làm việc theo Unicode, nên với chữ tiếng Việt hãy dùng UNICODE. Trên Windows, giữ Alt và gõ số trên bàn phím số: Alt+65 ra A, Alt+0233 ra é theo Windows-1252; dạng không có số 0 đầu dùng bảng mã OEM như Code Page 437.
Khác gì với công cụ đổi văn bản sang nhị phân và ký tự đặc biệt
Trang web này có vài công cụ gần nhau. Bảng mã ASCII (trang này) là bảng tra: cho bạn biết mỗi mã 0–255 là ký tự gì, ý nghĩa của ký tự điều khiển, thực thể HTML, sự khác nhau giữa các bảng mã mở rộng, và có thêm khung đổi nhanh giữa chữ và mã. Công cụ Text to Binary chuyên chuyển cả đoạn văn bản dài sang chuỗi nhị phân và ngược lại. Công cụ Ký tự đặc biệt gom ký tự trang trí, ký hiệu Unicode, chữ kiểu để sao chép vào tên game, mạng xã hội, những ký tự đó phần lớn nằm ngoài ASCII. Nếu bạn cần biết mã của một ký tự hoặc ký tự của một mã, dùng trang này; nếu cần chuyển một văn bản dài sang nhị phân, dùng Text to Binary.
Câu hỏi thường gặp (FAQ)
Bảng mã ASCII có bao nhiêu ký tự?
ASCII chuẩn có 128 ký tự, mã từ 0 đến 127, gồm 33 ký tự điều khiển và 95 ký tự in được (tính cả dấu cách). Các bảng ASCII mở rộng có thêm 128 mã từ 128 đến 255, tổng cộng 256, nhưng nội dung phần mở rộng tùy bảng mã.
Bảng mã ASCII mở rộng có bao nhiêu ký tự?
Phần mở rộng có 128 mã (128–255), cộng với 128 mã chuẩn là 256 mã, vừa đủ một byte. Không phải mã nào cũng in được: ISO-8859-1 dành 32 mã 128–159 cho ký tự điều khiển, Windows-1252 để trống 5 mã. Ký tự cụ thể phụ thuộc bảng mã như Windows-1252, ISO-8859-1 hay Code Page 437.
Mã ASCII của chữ A là bao nhiêu?
Chữ A hoa có mã 65 (hex 41, nhị phân 01000001, bát phân 101). Chữ a thường có mã 97 (hex 61). Chữ hoa và thường của cùng một chữ luôn cách nhau 32.
Mã ASCII của số 0 là bao nhiêu?
Ký tự chữ số 0 có mã 48 (hex 30), các chữ số 1 đến 9 lần lượt từ 49 đến 57. Cần phân biệt với mã 0 (NUL), là ký tự điều khiển rỗng, không phải chữ số 0.
Mã ASCII của dấu cách là bao nhiêu?
Dấu cách có mã 32 (hex 20, nhị phân 00100000), là ký tự in được đầu tiên. Dấu cách không ngắt dòng (NBSP) là mã 160 trong Windows-1252 và ISO-8859-1, khác với dấu cách thường.
Ký tự xuống dòng có mã ASCII bao nhiêu?
Linux và macOS xuống dòng bằng LF, mã 10, viết \n trong code. Windows dùng cặp CR LF, mã 13 và 10 (\r\n). Gõ 10 hoặc LF vào ô tìm kiếm để xem chi tiết.
Bảng mã ASCII lớp 10 cần nhớ những gì?
Thường chỉ cần nhớ ba mốc: chữ số 0 là 48, chữ A là 65, chữ a là 97, rồi đếm tiếp theo thứ tự bảng chữ cái. Từ mã thập phân, đổi sang nhị phân 8 bit theo cách chia 2 lấy dư. Cột Bin trên trang này giúp bạn kiểm tra kết quả tự đổi.
Lấy mã ASCII trong Python thế nào?
Dùng ord('A') để lấy mã 65 và chr(65) để lấy lại ký tự. Muốn dạng hex hoặc nhị phân, dùng hex(ord('A')) và bin(ord('A')). Với chữ có dấu, ord trả về code point Unicode chứ không phải mã ASCII.
Bảng mã ASCII hex dùng để làm gì?
Hex gọn hơn nhị phân và mỗi chữ số hex ứng với đúng 4 bit, nên lập trình viên dùng hex khi đọc dữ liệu thô, viết chuỗi thoát như \x41, xem file bằng trình hex editor hay viết biểu thức chính quy. Cột Hex trên trang luôn có 2 chữ số, ví dụ 0A cho LF.
Có bảng mã ASCII tiếng Việt không?
Không. ASCII chỉ có chữ Latin không dấu. Chữ tiếng Việt có dấu nằm trong Unicode, trước đây nằm trong các bảng mã 8 bit như TCVN3, VNI. Khung Văn bản sang mã trên trang hiện code point Unicode và byte UTF-8 cho chữ có dấu.
Windows-1252 và ISO-8859-1 khác nhau thế nào?
Chỉ khác ở mã 128–159: Windows-1252 dùng cho ký tự in được như €, dấu nháy cong, gạch ngang dài, ™, còn ISO-8859-1 dùng cho ký tự điều khiển C1. Từ 0 đến 127 và từ 160 đến 255 hai bảng giống hệt nhau.
Vì sao tài liệu khác lại có ký tự kẻ khung ở phần mở rộng?
Đó là Code Page 437 của máy IBM PC và MS-DOS, có ký tự kẻ khung, ký tự Hy Lạp, ký hiệu toán. Nhiều sách cũ gọi bảng này là ASCII mở rộng. Trang này hiển thị Windows-1252 và ISO-8859-1, không hiển thị Code Page 437.
Thực thể HTML trong bảng dùng thế nào?
Dán thẳng vào mã HTML, ví dụ © hoặc © đều hiện ký hiệu bản quyền. Dạng số &#N; dùng được với mọi ký tự, dạng tên chỉ có với một số ký tự. Với trang dùng UTF-8, bạn cũng có thể gõ thẳng ký tự, chỉ cần thực thể cho <, >, & trong nội dung.
Gõ ký tự đặc biệt bằng Alt + số trên Windows thế nào?
Giữ phím Alt và gõ mã trên bàn phím số (numpad) rồi thả Alt. Gõ có số 0 đầu như Alt+0233 dùng bảng Windows-1252 (ra é), gõ không có số 0 như Alt+130 dùng bảng OEM thường là Code Page 437. Laptop không có numpad cần bật Num Lock hoặc dùng cách khác.
Đổi dãy mã sang chữ bị báo mã không hợp lệ là sao?
Mã đó không đúng với cơ số đang chọn, ví dụ có chữ cái khi chọn Thập phân hoặc chữ số 2 khi chọn Nhị phân. Hãy chọn đúng cơ số; các mã hợp lệ còn lại vẫn được chuyển, mã sai bị bỏ qua và liệt kê trong thông báo.
Mã lớn hơn 255 có đổi sang chữ được không?
Được. Khung Mã sang văn bản hiểu mã lớn hơn 127 là code point Unicode, nên 7879 cho ra ệ, 8364 cho ra €. Chú ý đây là mã Unicode, khác với mã byte trong bảng Windows-1252 (ở đó € là 128).
Từ khóa liên quan
- bảng mã ascii
- bảng mã ascii đầy đủ
- bảng mã ascii cơ bản
- bảng mã ascii mở rộng
- bảng mã ascii mở rộng có bao nhiêu ký tự
- bảng mã ascii lớp 10
- bảng mã ascii python
- bảng mã ascii hex
- bảng mã ascii tiếng việt
- bảng mã ascii nhị phân
- mã ascii của chữ a
- mã ascii là gì
- ascii table
- ascii code
- ký tự điều khiển ascii
- bảng mã windows-1252
- bảng mã iso-8859-1
- đổi chữ sang mã ascii
- đổi mã ascii sang chữ
- html entity
- mã ascii xuống dòng
- alt code ký tự đặc biệt