เครื่องแปลง HEX เป็นไบนารี

ตัวเลขฐานสิบหกแต่ละตัวจะสอดคล้องกับบิตอย่างแม่นยำ 4 บิต ดังนั้นการแปลงจากฐานสิบหกเป็นฐานสองจึงถือเป็นวิธีการแปลงฐานที่มีความชัดเจนและแม่นยำที่สุด คุณเพียงต้องวางค่าฐานสิบหกหนึ่งค่าหรือหลายค่าลงในช่อง โปรแกรมนี้จะสร้างสตริงฐานสองโดยแต่ละหลักถูกขยายเป็นไน็บเบิล 4 บิตที่เติมศูนย์นำหน้าให้ครบ ซึ่งเหมาะอย่างยิ่งสำหรับเอกสารของฟิลด์บิต รีจิสเตอร์ในเฟิร์มแวร์ และการดีบักระดับลึก

วิธีแปลงเลขฐานสิบหกเป็นเลขฐานสอง

  1. 1

    ป้อนข้อมูลรูปแบบเฮกซาเดซิมอล

    กรุณาป้อนชุดตัวเลขและตัวอักษรตั้งแต่ 0 ถึง 9 และตัวอักษร a ถึง f โดยตัวนำคำ เช่น `0x` และตัวคั่นต่างๆ จะถูกลบออกไปโดยอัตโนมัติ

  2. 2

    แต่ละหลักจะกลายเป็น 4 บิต

    เลขฐานสิบหกแต่ละตัวจะถูกขยายเป็นค่าเทียบเท่าไบนารี 4 บิต ดังนั้นผลลัพธ์จึงมี 4 บิตต่อหนึ่งหลักเสมอ

  3. 3

    ศูนย์นำหน้าจะถูกเก็บไว้เสมอ

    แต่ละไนเบิลจะเก็บครบทั้ง 4 บิตเพื่อให้ขอบเขตของไบต์อยู่ในแนวเดียวกัน โดยไม่มีตัวเลือกในการตัดทิ้ง

  4. 4

    คัดลอกผลลัพธ์ไบนารี

    ผลลัพธ์เป็นสตริง `0/1` แบบบริสุทธิ์ที่จัดกลุ่มเป็นไน็บเบิล 4 บิต พร้อมใช้สำหรับการวางไว้ในเอกสาร คำอธิบายฟิร์มแวร์ หรือเครื่องคิดเลข

การแปลงข้อมูลจากรูปแบบเฮกซาเดซิมอลเป็นรูปแบบไบนารี

เฮกซ์เป็นรูปแบบการแสดงข้อมูลแบบไบนารีที่กระชับ โดยตัวเลขเฮกซ์ 2 หลักเท่ากับ 1 ไบต์ หรือ 8 บิต การแปลงค่าระหว่างรูปแบบทั้งสองนี้ทำได้อย่างรวดเร็ว เนื่องจากแต่ละตัวเลขเฮกซ์ครอบคลุมบิตอย่างแม่นยำ 4 บิต

ตารางค้นหาสำหรับไนเบิล

เฮกซ์ ไบนารี ทศนิยม
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
A 1010 10
B 1011 11
C 1100 12
D 1101 13
E 1110 14
F 1111 15

ดังนั้น 0x2F จะกลายเป็น 0010 1111

ทำไมการจัดกลุ่มแบบ 4 บิตจึงสำคัญ

วิศวกรที่อ่านคู่มืออ้างอิงของชิป STM32, AVR หรือ RISC-V มักคาดหวังว่ารีจิสเตอร์จะถูกจัดเป็นกลุ่มขนาด 4 บิต การจัดกลุ่มนี้ทำให้เห็นได้อย่างชัดเจนว่าชิป 0x8001 มีค่า MSB และ LSB กำหนดไว้แล้ว โดยไม่มีค่าใดอยู่ระหว่างกลาง

ลำดับไบต์และเพรฟิกซ์

  • 0x เป็นเพรฟิกซ์เฮกซ์แบบภาษา C; &H เป็นรูปแบบเก่าของภาษา BASIC; ส่วน $ ใช้ในภาษาแอสเซมบลีของ 6502 ตัวแปลงจะตัดทั้งสามรูปแบบนี้ทิ้ง รวมถึงอักขระอื่นๆ ที่ไม่ใช่เลขฐานสิบหก เช่น ช่องว่าง ขีดกลาง หรือเครื่องหมายทวิภาค
  • ผลลัพธ์ไบนารีจะเรียงบิตที่สำคัญที่สุดไว้ก่อนเสมอ ซึ่งเป็นลำดับไบต์แบบเครือข่าย หากระบบเป้าหมายใช้แบบลิตเทิลเอนเดียน (little-endian) ให้สลับตำแหน่งของไบต์ก่อนนำไปจัดวาง
  • เลขฐานสิบหกแต่ละตัวจะสร้างบิตครบทั้ง 4 บิตเสมอ ดังนั้นค่ารีจิสเตอร์แบบ 32 บิตจึงออกมาเป็น 32 บิตเสมอ โดยไม่มีฟีเจอร์ตัดทอนศูนย์นำหน้าที่ต้องเปิดหรือปิด

คำถามที่พบบ่อย

ไม่สำคัญ ค่า 0xFF, 0xff และ 0xFf ล้วนแปลงเป็น 11111111 เดียวกัน โดยตัวแปลงจะปฏิบัติกับตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เหมือนกัน

ตัวแปลงนี้ทำงานกับค่าสัมบูรณ์เท่านั้น เครื่องหมาย - ที่นำหน้าไม่ใช่อักขระฐานสิบหก จึงถูกลบออก และ -0x01 จะกลายเป็น 0000 0001 เช่นเดียวกับ 0x01 หากต้องการผลลัพธ์แบบทูส์คอมพลีเมนต์หรือมีเครื่องหมาย โปรดใช้เครื่องมือเฉพาะสำหรับตัวเลขมีเครื่องหมาย

ได้ ให้แยกค่าต่างๆ ด้วยช่องว่างหรือบรรทัดใหม่ แล้วตัวแปลงจะลบตัวคั่นออก เช่น 2A 3B จะได้ 0010 1010 0011 1011 โปรดทราบว่าผลลัพธ์เป็นสตรีมต่อเนื่องหนึ่งเดียว ดังนั้นขอบเขตระหว่างค่าที่ป้อนจะไม่ถูกเก็บรักษาไว้

ใช่ เลขฐานสิบหกแต่ละตัวจะสร้างบิตครบทั้ง 4 บิตโดยเก็บศูนย์นำหน้าไว้เสมอ ดังนั้นค่ารีจิสเตอร์แบบ 32 บิต เช่น 0x80010000 จะออกมาเป็น 1000 0000 0000 0001 0000 0000 0000 0000 โดยขอบเขตของไบต์อยู่ในแนวเดียวกันเสมอ

เครื่องมือที่เกี่ยวข้อง

ตารางอ้างอิง ASCII

ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL

อ้างอิงตัวอักษร HTML

รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ

ตารางอ้างอิงแป้นพิมพ์ลัด

ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux

ตัวลดรูปพีชคณิตบูลีน

ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^

เครื่องสร้างตัวอักษรสุ่ม

สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน

เครื่องมือสร้าง EditorConfig

สร้างไฟล์ .editorconfig ด้วยกฎสไตล์และขนาดการเยื้อง การจบบรรทัด ชุดอักขระ และช่องว่างของคุณ เพื่อให้การจัดรูปแบบสอดคล้องกันในทุก IDE และโปรแกรมแก้ไข

เครื่องมือนี้มีให้บริการในภาษาอื่น