เครื่องแปลงเลขฐานสิบหกเป็นเลขฐานสิบ

การอ่านที่อยู่หน่วยความจำ รหัสข้อผิดพลาดแบบ 32 บิต หรือโค้ดพอยต์ UTF-8 ดิบ ๆ มักเริ่มต้นด้วยค่าเลขฐานสิบหกที่คุณต้องเข้าใจให้อยู่ในรูปเลขฐานสิบ เครื่องแปลงนี้รับค่าเลขฐานสิบหกทุกรูปแบบ ไม่ว่าจะมีหรือไม่มีคำนำหน้า 0x และคืนค่าเทียบเท่าในเลขฐานสิบด้วยการคำนวณความแม่นยำไม่จำกัดเต็มรูปแบบ ทำให้ค่าขนาด 64 บิตหรือใหญ่กว่ายังคงทุกหลักไว้ครบถ้วน

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

  1. 1

    ป้อนค่าเลขฐานสิบหก

    วางเลขฐานสิบหกใด ๆ ก็ได้ เช่น `0x1F4`, `1F4`, `$1f4` จะเป็นตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กก็ได้

  2. 2

    ไม่สนใจตัวคั่น

    ช่องว่าง ขีดล่าง และยัติภังค์จะถูกตัดออก ดังนั้น `DE AD BE EF` และ `DEADBEEF` จึงเป็นค่าเดียวกัน

  3. 3

    อ่านค่าเลขฐานสิบ

    ผลลัพธ์ใช้การคำนวณความแม่นยำไม่จำกัด ดังนั้น `0xFFFFFFFFFFFFFFFF` จึงคืนค่าเป็นเลขฐานสิบเต็ม 20 หลัก

  4. 4

    คัดลอกหรือนำไปใช้ต่อ

    นำค่าเลขฐานสิบไปวางในเครื่องคิดเลข สเปรดชีต หรือดีบักเกอร์ของคุณ

การอ่านเลขฐานสิบหกให้เป็นเลขฐานสิบ

เลขฐานสิบหกใช้ตัวเลข 16 หลัก คือ 0-9 แล้วตามด้วย A-F (10-15) ค่าของเลขฐานสิบหกคือผลรวมของแต่ละหลักที่คูณด้วยกำลังของ 16

ค่าประจำหลัก

ตำแหน่ง (จากขวาไปซ้าย) กำลังของ 16 ค่าน้ำหนักฐานสิบ
0 16^0 1
1 16^1 16
2 16^2 256
3 16^3 4,096
4 16^4 65,536
5 16^5 1,048,576
6 16^6 16,777,216
7 16^7 268,435,456
8 16^8 4,294,967,296

ดังนั้น 0x1F4 = 1 × 256 + 15 × 16 + 4 × 1 = 500

ค่าอ้างอิงที่มีประโยชน์

เลขฐานสิบหก เลขฐานสิบ ความหมาย
0xFF 255 ค่าสูงสุดแบบไม่มีเครื่องหมาย 8 บิต
0x7F 127 ค่าสูงสุดแบบมีเครื่องหมาย 8 บิต
0xFFFF 65,535 ค่าสูงสุดแบบไม่มีเครื่องหมาย 16 บิต
0xFFFFFFFF 4,294,967,295 ค่าสูงสุดแบบไม่มีเครื่องหมาย 32 บิต
0x7FFFFFFF 2,147,483,647 ค่าสูงสุดแบบมีเครื่องหมาย 32 บิต (INT_MAX)
0xFFFFFFFFFFFFFFFF 18,446,744,073,709,551,615 ค่าสูงสุดแบบไม่มีเครื่องหมาย 64 บิต

การตีความแบบไม่มีเครื่องหมาย

เครื่องแปลงนี้จะคืนค่าแบบไม่มีเครื่องหมาย (บวก) ของค่าที่ป้อนเสมอ: 0xFF คือ 255 และ 0x80000000 คือ 2,147,483,648 หากข้อมูลของคุณเป็นค่าแบบมีเครื่องหมายในรูปคอมพลีเมนต์สอง (two’s complement) ให้ใช้กฎนั้นเองด้วยความกว้างบิตที่ตรงกัน เช่น ไบต์ 0xFF จะเป็น -1 ในบริบทแบบมีเครื่องหมาย 8 บิต และ 0x80000000 จะเป็น -2,147,483,648 ในบริบทแบบมีเครื่องหมาย 32 บิต

ความแม่นยำไม่จำกัด

เนื่องจากเครื่องแปลงคำนวณด้วยความแม่นยำไม่จำกัดเต็มรูปแบบ คุณจึงวางค่าที่มีความยาวเท่าใดก็ได้โดยไม่สูญเสียความแม่นยำ ซึ่งสำคัญอย่างยิ่งเมื่ออ่านค่าคงที่ทางการเข้ารหัสหรือตัวนับโทเคนที่ยาว

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

เพราะเครื่องแปลงคืนค่าการตีความแบบไม่มีเครื่องหมาย (บวก) เสมอ ไบต์ 0xFF จะเป็น -1 เฉพาะในบริบทแบบมีเครื่องหมาย 8 บิตในรูปคอมพลีเมนต์สอง (two’s complement) เท่านั้น ส่วนในฐานะค่าปกติแบบไม่มีเครื่องหมายคือ 255 หากคุณอ่านข้อมูลแบบมีเครื่องหมาย ให้ตีความผลลัพธ์ฐานสิบตามความกว้างบิตของข้อมูลคุณ

เครื่องแปลงคำนวณด้วยความแม่นยำไม่จำกัดเต็มรูปแบบ ค่าเลขฐานสิบที่มี 20 หลักขึ้นไปจึงออกมาถูกต้องแม่นยำ

ได้, ช่องว่าง ขีดล่าง และยัติภังค์จะถูกตัดออก โดย DE AD BE EF และ DEADBEEF จะแปลงเป็นเลขฐานสิบเดียวกัน

ได้ ตัวพิมพ์ใหญ่หรือเล็กไม่มีผลในเลขฐานสิบหก 0xAB และ 0xab แปลงเป็น 171 ทั้งคู่

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

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

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

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

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

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

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

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

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

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

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

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

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

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