ตัวแปลง ASCII เป็นเลขฐานสอง
ตัวแปลง ASCII เป็นเลขฐานสองจะนำอักขระแต่ละตัวจากข้อมูลที่ป้อน มาค้นหาจุดรหัสเจ็ดบิต เติมให้เต็มหนึ่งไบต์ แล้วแสดงผลแปดบิตเป็นเลขศูนย์และหนึ่ง เหมาะกับการบ้านวิทยาการคอมพิวเตอร์ การอ่านฐานสิบหกแบบดัมป์ทีละไบต์ และการเขียนฟิกซ์เจอร์ทดสอบสำหรับโค้ดอนุกรมหรือเครือข่ายระดับต่ำที่ต้องเห็นชัดว่าบิตใดวิ่งผ่านสายส่ง
ASCII กลายเป็นเลขฐานสองอย่างไร
-
1
วางข้อความของคุณ
รับอักขระ ASCII ที่พิมพ์ได้ทุกตัว ทั้งตัวอักษร ตัวเลข เครื่องหมายวรรคตอน และช่องว่าง
-
2
แต่ละอักขระถูกจับคู่กับรหัสฐานสิบ
เช่น `A` คือ 65, `a` คือ 97, ช่องว่างคือ 32
-
3
เลขฐานสิบนั้นกลายเป็นเลขฐานสองแบบ 8 บิต
65 ในฐานสองคือ `01000001` เลขศูนย์ด้านหน้าช่วยเติมให้เต็มหนึ่งไบต์
-
4
ไบต์ถูกเชื่อมด้วยช่องว่าง
ดังนั้น `Hi` กลายเป็น `01001000 01101001` เปลี่ยนตัวคั่นได้หากรูปแบบปลายทางของคุณต้องการอย่างอื่น
ตัวอย่างการคำนวณ
คำว่า Cat เข้ารหัสเป็น:
| อักขระ | ฐานสิบ | ฐานสอง |
|---|---|---|
| C | 67 | 01000011 |
| a | 97 | 01100001 |
| t | 116 | 01110100 |
เมื่อนำมาต่อกัน: 01000011 01100001 01110100
ทำไมต้อง 8 บิต ไม่ใช่ 7?
ASCII ถูกกำหนดเป็นรหัส 7 บิต คือค่า 0-127 แต่เครื่องสมัยใหม่ทุกเครื่องเก็บอักขระเป็นไบต์เต็ม ดังนั้นบิตบนสุดจึงมีอยู่เสมอ และเป็นศูนย์เสมอสำหรับ ASCII บริสุทธิ์ การเติมเป็น 8 บิตทำให้ตรงกับสิ่งที่จะเห็นในโปรแกรมแก้ไขฐานสิบหกหรือการติดตามด้วย Wireshark
ข้อมูลป้อนที่ไม่ใช่ ASCII
อักขระเหนือ U+007F (ตัวอักษรมีเครื่องหมาย อีโมจิ อักษรจีน-ญี่ปุ่น-เกาหลี) ไม่ใช่ ASCII หากข้อมูลป้อนเข้ารหัสเป็น UTF-8 อักขระหนึ่งตัวอาจใช้ 2, 3 หรือ 4 ไบต์ เช่น é (e มีเครื่องหมายอะคิวต์) คือ 11000011 10101001 ใน UTF-8 ซึ่งเป็นลำดับสองไบต์ ตัวแปลงนี้มองแต่ละไบต์ของ UTF-8 เป็นหนึ่งหน่วย
กรณีใช้งานที่พบบ่อย
- การศึกษา — วิชาวิทยาการคอมพิวเตอร์เบื้องต้น แสดงว่าข้อความกลายเป็นบิตอย่างไร
- การแก้จุดบกพร่องโปรโตคอล — รู้ว่า
GETตอนต้นของคำขอ HTTP คือ01000111 01000101 01010100 00100000 - ปริศนาการทำให้อ่านยาก — ข้อความฐานสองเป็นแนวที่พบบ่อยในปริศนาห้องหนีภัยและโจทย์ CTF
คำถามที่พบบ่อย
เพราะ ASCII ไปได้แค่ 127 ดังนั้นบิตที่มีนัยสำคัญสูงสุดของทุกไบต์ ASCII จึงเป็นศูนย์ สตริงที่มีไบต์ UTF-8 ที่ไม่ใช่ ASCII จะมีเลขหนึ่งนำหน้าในไบต์ต่อเนื่อง
ได้ ใช้ Binary to ASCII Converter ซึ่งรับการจัดกลุ่มแบบ 8 บิตได้ทั้งแบบมีและไม่มีตัวคั่น
รองรับ การขึ้นบรรทัดใหม่แต่ละครั้งเป็นหนึ่งไบต์ (LF = 0x0A = 00001010) หรือสองไบต์ (CRLF = 0x0D 0x0A) ขึ้นกับแหล่งที่คัดลอกมา ตัวแปลงจะส่งผ่านเป็นอักขระปกติ
ช่องว่างระหว่างไบต์อ่านง่ายที่สุด ใช้แบบไม่มีตัวคั่นหากจะวางในตัวแยกวิเคราะห์แบบความกว้างคงที่ บางวิชาวิทยาการคอมพิวเตอร์ต้องการยัติภังค์หรือจุด ให้เลือกตามเกณฑ์การให้คะแนน
เครื่องมือที่เกี่ยวข้อง
เครื่องมือสร้างสีแบบสุ่ม
สร้างสี HEX แบบสุ่ม 1 ถึง 50 สี พร้อมตัวอย่างสีสำหรับดูตัวอย่าง คัดลอก และนำไปใช้ใน CSS งานทดสอบ หรือการสำรวจพาเลตสี.
เครื่องกำเนิดจานสี
สร้างพาเลตสีแบบเอกรงค์ ใกล้เคียง คู่ตรงข้าม ไตรแอดิก หรือเตตราดิกจากสี HEX หลัก พร้อมส่งออกตัวแปร CSS ที่คัดลอกได้ทันที
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
ตัวจัดรูปแบบ JSON
วาง JSON เพื่อจัดให้อ่านง่ายด้วยการเยื้อง 2 หรือ 4 ช่องว่าง ย่อให้เป็นผลลัพธ์แบบกะทัดรัด หรือตรวจสอบไวยากรณ์อย่างรวดเร็วก่อนคัดลอกผลลัพธ์
เครื่องมือเลือกสี HEX
เลือกสีจากหน้าจอแล้วดูค่า HEX, RGB, HSL, HSV และ CMYK พร้อมค่าคอนทราสต์เมื่อเทียบกับสีขาวและสีดำ
ตัวแปลง ASCII เป็น Hex
แปลงข้อความ ASCII เป็นค่า byte แบบ hexadecimal output ใช้ hex digits สองตัวต่อ character พร้อมสำหรับ memory dumps, packet traces หรือ firmware tables