ตัวแปลงเลขฐานสิบเป็นฐานแปด
เลขฐานแปดคือระบบเลขฐาน 8 ที่คุณพบบ่อยที่สุดในการกำหนดสิทธิ์ไฟล์ของ Unix (chmod 755) และในภาษาโปรแกรมรุ่นเก่า ตัวแปลงนี้เปลี่ยนจำนวนเต็มฐานสิบใดๆ ให้เป็นรูปเลขฐานแปด คำแนะนำด้านล่างอธิบายวิธีหารด้วย 8 เพื่อให้คุณตรวจสอบผลลัพธ์ด้วยตัวเองได้
วิธีแปลงเลขฐานสิบเป็นฐานแปด
-
1
ป้อนจำนวนเต็มฐานสิบ
พิมพ์จำนวนเต็มใดก็ได้ เช่น 255 หรือ 4096
-
2
อ่านผลลัพธ์ฐานแปด
ตัวเลขฐานแปดจะแสดงทันทีในรูปแบบธรรมดา ไม่มีคำนำหน้า พร้อมคัดลอก
-
3
เรียนรู้วิธีแปลง
คำแนะนำด้านล่างอธิบายขั้นตอนการหารด้วย 8 และกองเศษที่กลายเป็นเลขหลักของฐานแปด เพื่อให้คุณตรวจสอบผลลัพธ์ด้วยตัวเองได้
-
4
กฎสำหรับจำนวนลบ
จำนวนลบจะถูกแปลงในรูปแบบส่วนเติมเต็มสองแบบ 64 บิต ซึ่งเป็นผลลัพธ์เดียวกับที่รูปแบบ `%o` ในภาษา C แสดงออกมา
การหารด้วย 8 สร้างเลขหลักฐานแปดได้อย่างไร
ในการแปลงเลขฐานสิบเป็นฐานแปด ให้หารด้วย 8 ไปเรื่อยๆ แล้วเก็บเศษจากล่างขึ้นบน
83 / 8 = 10 เศษ 3
10 / 8 = 1 เศษ 2
1 / 8 = 0 เศษ 1
อ่านจากล่างขึ้นบน: 123
ดังนั้น 83 ในฐานสิบจึงเท่ากับ 123 ในฐานแปด เลขแต่ละหลักของฐานแปดแทนได้พอดีสามบิต จึงเป็นเหตุผลที่ฐานแปดปรากฏในการเขียนสิทธิ์ของ Unix ซึ่งใช้สามบิตเข้ารหัสสิทธิ์อ่าน เขียน และรัน สำหรับผู้ใช้แต่ละกลุ่ม
ค่าสำคัญที่ควรจำ
| ฐานสิบ | ฐานแปด | คำอธิบาย |
|---|---|---|
| 7 | 7 | เลขหลักเดียวที่ใหญ่ที่สุดในฐานแปด |
| 8 | 10 | ค่าฐานแปดสองหลักตัวแรก |
| 64 | 100 | ค่าฐานแปดสามหลักตัวแรก |
| 511 | 777 | ค่าสูงสุด 9 บิต, สิทธิ์ Unix เต็มรูปแบบ |
| 4,096 | 10000 | ค่าฐานแปดห้าหลักตัวแรก |
ตารางสรุปสิทธิ์ของ Unix
ตัวเลข chmod ที่คุ้นเคยเป็นเลขฐานแปด แต่ละหลักคือมาสก์ขนาดสามบิตสำหรับเจ้าของ กลุ่ม และผู้อื่นทั้งหมด
- 4 คือสิทธิ์อ่าน (read)
- 2 คือสิทธิ์เขียน (write)
- 1 คือสิทธิ์รัน (execute)
ดังนั้น 755 หมายความว่าเจ้าของมีสิทธิ์ 7 (rwx) ส่วนกลุ่มและผู้อื่นมีสิทธิ์ 5 (r-x) ส่วน 644 หมายความว่าเจ้าของมีสิทธิ์ rw- และผู้อื่นทุกคนมีสิทธิ์ r--
จุดที่ต้องระวัง: เลขศูนย์นำหน้า
ในภาษา C เลขศูนย์นำหน้าหมายถึงฐานแปด: int x = 010; กำหนดค่าเป็น 8 ไม่ใช่ 10 JavaScript ยกเลิกธรรมเนียมนี้ไปแล้วเพราะทำให้ทุกคนสับสน ส่วน Python ก็เลิกใช้ตั้งแต่เวอร์ชัน 3.0 หากโค้ดของคุณเป็นแบบสมัยใหม่ ควรใช้คำนำหน้า 0o เพื่อเลี่ยงข้อผิดพลาดที่คลาดเคลื่อนไปแปดเท่าโดยไม่รู้ตัว
คำถามที่พบบ่อย
เพราะฐาน 8 มีตัวเลขที่ใช้ได้พอดีแปดตัวในแต่ละหลัก ตัวเลข 8 จึงไม่สามารถปรากฏในเลขฐานแปดได้ เช่นเดียวกับที่ตัวเลข 10 ไม่สามารถปรากฏในเลขฐานสิบ หากเศษถึง 8 มันจะกลายเป็น 10 ในหลักถัดไป
พบได้น้อยมาก ระบบฝังตัวบางระบบและรูปแบบไฟล์รุ่นเก่ายังคงพึ่งพาฐานแปดอยู่ แต่สำหรับงานสมัยใหม่ส่วนใหญ่ ฐานสิบหกได้เข้ามาแทนที่ เพราะเลขฐานสิบหกหนึ่งหลักจับคู่ได้พอดีกับสี่บิต (ครึ่งไบต์) แทนที่จะเป็นสามบิต
ไม่ได้ ตัวแปลงนี้ทำงานกับเลขจำนวนเต็มเท่านั้น หากคุณพิมพ์ตัวเลขที่มีจุดทศนิยม จะแปลงเฉพาะส่วนที่เป็นจำนวนเต็ม เช่น 12.9 ได้ผลลัพธ์เดียวกับ 12
การแปลงถูกคำนวณบนเซิร์ฟเวอร์ ตัวเลขที่คุณพิมพ์จึงถูกส่งไปเป็นส่วนหนึ่งของการโต้ตอบกับหน้าเว็บ และอาจอยู่ในลิงก์เมื่อคุณเปลี่ยนระหว่างขั้นตอนของเครื่องมือ ตัวเลขจะไม่ถูกจัดเก็บและไม่ถูกแชร์ให้บุคคลที่สาม
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
เครื่องสร้างตัวอักษรสุ่ม
สร้างตัวอักษร A-Z แบบสุ่ม เลือกจำนวน ตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก หรือแบบผสม แล้วใช้กับเกม โจทย์ หรือกิจกรรมในห้องเรียน
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
เครื่องมือตรวจสอบหมายเลขโทรศัพท์
ตรวจสอบโครงสร้างหมายเลขตามประเทศ พร้อมดูภูมิภาค ประเภท และรูปแบบ E.164 ระหว่างประเทศ ในประเทศ และ RFC 3966
เครื่องมือนี้มีให้บริการในภาษาอื่น
- 10進数から8進数への変換ツール [JA]
- Convertisseur Décimal en Octal [FR]
- Dezimal zu Oktal Konverter [DE]
- Konverter Desimal ke Oktal [ID]
- Konwerter dziesiętny na ósemkowy [PL]
- Convertidor de Decimal a Octal [ES]
- Decimal till oktal-omvandlare [SV]
- Chuyển đổi thập phân sang bát phân [VI]
- 十进制转八进制转换器 [ZH]
- Decimaal naar octaal omrekenaar [NL]
- 10진수에서 8진수로 변환기 [KO]
- Ondalıktan Sekizliğe Çevirici [TR]
- Decimal to Octal Converter [EN]
- Conversor de Decimal para Octal [PT]
- محول العشري إلى الثماني [AR]
- Convertitore da Decimale a Ottale [IT]
- Конвертер из десятичной в восьмеричную систему [RU]