T

Text Machine

เครื่องมือข้อความทรงพลัง ในเบราว์เซอร์ของคุณ

ตัวแปลงฐานเลข

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

แปลงจาก

ตัวเลข
ผลลัพธ์

กรอกตัวเลขด้านบนเพื่อดูค่าในทุกฐาน

วิธีใช้ ตัวแปลงฐานเลข

  1. 1

    กรอกตัวเลขของคุณ

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

  2. 2

    เลือกฐานเริ่มต้น

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

  3. 3

    อ่านทุกฐานพร้อมกัน

    ค่าจะแสดงในไบนารี ฐานแปด ฐานสิบ และเลขฐานสิบหกพร้อมกัน คุณจึงเปรียบเทียบหรือคัดลอกฐานที่ต้องการได้ทันที

  4. 4

    คัดลอกผลลัพธ์

    ใช้ปุ่มคัดลอกข้างฐานใดก็ได้เพื่อนำค่านั้นไปไว้ในคลิปบอร์ดของคุณ

ฐานเลข: ไบนารี ฐานแปด ฐานสิบ และเลขฐานสิบหก

ฐานเลขคืออะไร

ฐานเลข หรือที่เรียกว่า radix คือจำนวนสัญลักษณ์ตัวเลขที่แตกต่างกันซึ่งระบบจำนวนหนึ่งใช้ และจึงเป็นตัวกำหนดว่าแต่ละตำแหน่งมีค่าเท่าใด ฐานสิบคือฐาน 10 ที่มีตัวเลขสิบตัวตั้งแต่ 0 ถึง 9 ไบนารีคือฐาน 2 ที่มีสองตัว ฐานแปดคือฐาน 8 ที่มีแปดตัว และเลขฐานสิบหกคือฐาน 16 ที่มีสิบหกตัว ปริมาณเดียวกันสามารถเขียนในฐานใดก็ได้ — เปลี่ยนแค่สัญลักษณ์และน้ำหนักของหลักเท่านั้น ไม่เคยเปลี่ยนค่าที่อยู่เบื้องหลัง

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

สัญกรณ์ตามตำแหน่งในทุกฐาน

ทุกระบบเหล่านี้เป็นระบบตามตำแหน่ง หมายความว่าค่าของตัวเลขจะถูกคูณด้วยเลขยกกำลังของฐานตามหลักของมัน ในฐานสิบ หลักจากขวาเป็นเลขยกกำลังของสิบ ได้แก่ หลักหน่วย หลักสิบ หลักร้อย ในฐาน b ใด ๆ หลักต่าง ๆ เป็นเลขยกกำลังของ b หลักขวาสุดคือ b ยกกำลังศูนย์ (เท่ากับ 1 เสมอ) จากนั้น b แล้ว b ยกกำลังสอง ไปเรื่อย ๆ ในการหาค่าของตัวเลข คุณต้องคูณแต่ละหลักด้วยเลขยกกำลังของหลักนั้น แล้วบวกผลลัพธ์เข้าด้วยกัน

กฎข้อเดียวนี้รวมทุกฐานเข้าด้วยกัน หลักของไบนารีเป็นเลขยกกำลังของสอง (1, 2, 4, 8) หลักของฐานแปดเป็นเลขยกกำลังของแปด (1, 8, 64, 512) และหลักของเลขฐานสิบหกเป็นเลขยกกำลังของสิบหก (1, 16, 256, 4096) การแปลงตัวเลขใด ๆ เป็นฐานสิบก็เพียงแค่ใช้ผลรวมถ่วงน้ำหนักนี้ ส่วนการแปลงฐานสิบเป็นฐานอื่นคือกระบวนการย้อนกลับ โดยใช้การหารซ้ำด้วยฐานนั้น

สัญลักษณ์ตัวเลขที่เกินกว่า 9

ฐานหนึ่งต้องการสัญลักษณ์ตัวเลขจำนวนเท่ากับขนาดของมันพอดี และนั่นทำให้เกิดคำถามสำหรับฐานที่มากกว่าสิบว่า คุณจะเขียนตัวเลขหลักเดียวที่มีค่ามากกว่าเก้าได้อย่างไร เลขฐานสิบหกแก้ปัญหานี้ด้วยการยืมตัวอักษรมาใช้ หลังจาก 0 ถึง 9 มันจะใช้ A แทนสิบ B แทนสิบเอ็ด C แทนสิบสอง D แทนสิบสาม E แทนสิบสี่ และ F แทนสิบห้า ดังนั้นเลขฐานสิบหกหลักเดียวจึงครอบคลุมค่าตั้งแต่ศูนย์ถึงสิบห้า และตัวพิมพ์ใหญ่เล็กไม่มีผล F และ f จึงเท่ากัน

ฐานที่เท่ากับหรือต่ำกว่าสิบไม่ต้องใช้ตัวอักษร ไบนารีใช้เพียง 0 และ 1 ฐานแปดใช้ 0 ถึง 7 และฐานสิบใช้ 0 ถึง 9 นี่ยังเป็นเหตุผลที่ตัวเลขบางตัวผิดกฎในบางฐานด้วย เลข 8 หรือ 9 ไม่สามารถปรากฏในฐานแปดได้ และมีเพียง 0 กับ 1 เท่านั้นที่ใช้ได้ในไบนารี หากคุณป้อนตัวเลขที่ใหญ่เกินไปสำหรับฐานที่เลือก ค่านั้นจะไม่ใช่ตัวเลขที่ถูกต้องในฐานนั้น และตัวแปลงจะแจ้งให้คุณทราบ

ทำไมจึงใช้แต่ละฐาน

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

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

ตัวอย่างที่ลงมือทำ: 0xFF ในทุกฐาน

ลองนำค่าเลขฐานสิบหก FF มาแปลงข้ามทั้งสี่ฐาน เมื่ออ่านมันตามค่าประจำตำแหน่ง F ตัวซ้ายอยู่ในหลักสิบหก และ F ตัวขวาอยู่ในหลักหน่วย ดังนั้นมันจึงเท่ากับ 15 คูณ 16 บวก 15 คูณ 1 ซึ่งเท่ากับ 240 บวก 15 เท่ากับ 240 + 15 = 255 ในฐานสิบ นั่นคือค่าสูงสุดของหนึ่งไบต์

ปริมาณเดียวกันนี้คือ 11111111 ในไบนารี — เลขหนึ่งแปดตัว เนื่องจาก 255 น้อยกว่า 256 อยู่หนึ่ง ซึ่ง 256 คือสองยกกำลังแปด ในฐานแปดมันคือ 377 เพราะ 255 เท่ากับ 3 คูณ 64 บวก 7 คูณ 8 บวก 7 ดังนั้นค่าเดียวคือ 255 จึงปรากฏเป็น FF, 11111111, 377 และ 255 ขึ้นอยู่กับฐาน และตัวแปลงนี้แสดงทั้งสี่ฐานพร้อมกัน คุณจึงเปรียบเทียบมันได้โดยตรง

ตัวอย่างข้ามฐานอันที่สอง

แปลงเลขฐานสิบ 100 เป็นอีกสามฐาน สำหรับไบนารี ให้หาเลขยกกำลังของสองที่รวมกันได้เท่ากับมัน คือ 64 + 32 + 4 เท่ากับ 100 ดังนั้นหลัก 64, 32 และ 4 จึงถูกตั้งไว้ และผลลัพธ์คือ 1100100 สำหรับเลขฐานสิบหก ให้หารด้วยสิบหก 100 เท่ากับ 6 คูณ 16 (96) เหลือเศษ 4 ได้เป็น 64 สำหรับฐานแปด ให้หารด้วยแปด 100 เท่ากับ 1 คูณ 64 บวก 4 คูณ 8 บวก 4 ได้เป็น 144

ดังนั้นเลขฐานสิบ 100 จึงเป็นไบนารี 1100100 ฐานแปด 144 และเลขฐานสิบหก 64 สังเกตว่ายิ่งฐานสูงขึ้น การแทนค่าก็ยิ่งสั้นลง เพราะแต่ละหลักแบกน้ำหนักได้มากกว่า ความกระชับนี้แหละคือเหตุผลที่เลขฐานสิบหกเป็นที่นิยมในการเขียนค่าไบต์ที่จะดูเทอะทะหากเขียนในไบนารี

ตัวเลขขนาดใหญ่ จำนวนลบ และการจัดรูปแบบอินพุต

ตัวแปลงนี้ใช้ big integer แบบความแม่นยำไม่จำกัด มันจึงแปลงค่าที่เกินขีดจำกัด 64 บิตตามปกติไปไกลได้อย่างแม่นยำโดยไม่มีการปัดเศษ — มีประโยชน์เมื่อคุณกำลังทำงานกับแฮชยาว ๆ ตัวระบุ หรือค่าทางการเข้ารหัสที่จะล้นชนิดตัวเลขทั่วไป มันยังรองรับจำนวนลบด้วย ใส่เครื่องหมายลบไว้ด้านหน้า แล้วเครื่องหมายนั้นจะถูกนำไปใช้กับทุกฐานในผลลัพธ์

เพื่อความสะดวก ช่องว่างและขีดล่างในอินพุตของคุณจะถูกมองข้าม ดังนั้นค่าที่จัดกลุ่มไว้อย่าง 1010_1101 หรือ 255 255 จึงถูกอ่านเป็นตัวเลขเดียว สิ่งนี้ช่วยให้คุณวางค่าที่จัดรูปแบบไว้เพื่อให้อ่านง่ายได้โดยไม่ต้องล้างมันก่อน เพียงแต่ต้องแน่ใจว่าทุกหลักถูกกฎสำหรับฐานที่คุณเลือก — ไม่มี 2 ในไบนารี ไม่มี 8 หรือ 9 ในฐานแปด มีเพียง 0-9 และ A-F ในเลขฐานสิบหก — มิฉะนั้นอินพุตจะถูกตั้งสถานะว่าไม่ถูกต้องสำหรับฐานนั้น

การแปลงฐานช่วยที่ไหน

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

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

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

ฉันจะแปลงเลขฐานสิบหกเป็นฐานสิบได้อย่างไร?
เลือก Hex เป็นฐานเริ่มต้นแล้วพิมพ์ค่าเลขฐานสิบหกของคุณ เช่น ff ผลลัพธ์ฐานสิบคือ 255 จะปรากฏขึ้นทันทีพร้อมกับรูปแบบไบนารีและฐานแปด
รองรับฐานใดบ้าง?
ไบนารี (ฐาน 2) ฐานแปด (ฐาน 8) ฐานสิบ (ฐาน 10) และเลขฐานสิบหก (ฐาน 16) ทุกค่าจะแสดงครบทั้งสี่ฐานพร้อมกัน คุณจึงไม่ต้องแปลงซ้ำสองครั้ง
รองรับตัวเลขขนาดใหญ่มากได้ไหม?
ได้ ตัวแปลงนี้ใช้ big integer แบบความแม่นยำไม่จำกัด ค่าที่เกินขีดจำกัด 64 บิตตามปกติไปไกลจึงแปลงได้อย่างแม่นยำโดยไม่มีการปัดเศษ
รองรับจำนวนลบหรือไม่?
ได้ ใส่เครื่องหมายลบไว้หน้าค่า แล้วเครื่องหมายนั้นจะถูกนำไปใช้กับทุกฐานในผลลัพธ์
มีการส่งข้อมูลไปยังเซิร์ฟเวอร์หรือไม่?
ไม่มี การแปลงทำงานในเบราว์เซอร์ของคุณทั้งหมด ตัวเลขของคุณจึงไม่ออกไปจากอุปกรณ์และไม่มีการจัดเก็บใด ๆ

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

ทำงานต่อด้วยเครื่องมือที่มีประโยชน์เหล่านี้

ตัวแปลง Unix Timestamp

ตัวแปลง JSON เป็น CSV

ตัวแปลง CSV เป็น JSON

ตัวแปลง JSON เป็น YAML

ตัวแปลงข้อความเป็นไบนารี

ตัวแปลงข้อความเป็นเลขฐานสิบหก