Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> Linux

ใช้ Linux bc เป็นเครื่องคิดเลข Hex: คู่มือบรรทัดคำสั่งฉบับเร็ว

เครื่องคิดเลข bc (basic calculator) มาพร้อม GNU/Linux และ Unix-like ทุกตัว ไวยากรณ์คล้ายภาษา C ใช้แปลงเลขฐานต่างๆ (hex, dec, bin, oct) ได้จากบรรทัดคำสั่ง — ไม่ต้องติดแอปโทรศัพท์

เปิดเทอร์มินัล

  • Linux: Ctrl+Alt+T หรือค้นหา Terminal
  • macOS: โฟลเดอร์ Utilities หรือ Dock

วิธีที่ 1: แปลงทศนิยม ↔ Hexadecimal

Dec → Hex:

echo 'obase=16;127' | bc

ผลลัพธ์: 7F (แทนที่ 127 ด้วยตัวเลขอื่นได้)

Hex → Dec:

echo 'ibase=16;obase=A;7F' | bc

obase=A = ฐาน 10 (A ใน hex = 10)

วิธีที่ 2: แปลง Binary ↔ Hexadecimal

Bin → Hex:

echo 'obase=16;ibase=2;111010001' | bc

ผลลัพธ์: 1D1

Hex → Bin:

echo 'obase=2;ibase=16;1D1' | bc

ได้กลับมาเป็น 111010001

⚠️ ข้อสังเกตสำคัญ

  • ตัวอักษร Hex ต้องเป็นพิมพ์ใหญ่ (A-F) — bc ถือพิมพ์เล็กเป็นตัวแปรพีชคณิต
  • รันได้ด้วยสิทธิ์ผู้ใช้ทั่วไป ไม่ต้อง root
  • นำไปใส่ใน shell script ได้เลย

วิธีที่ 3: ใช้ bc คำนวณเลข Hex (คณิตศาสตร์)

เหมาะสำหรับนักพัฒนา/นักศึกษาคอมพิวเตอร์ คำนวณ offset หน่วยความจำ ฯลฯ

ลบ Hex:

echo 'ibase=16;EE65522D-C3EFAF86' | bc

ลบ และแสดงผลเป็น Hex:

echo 'obase=16;ibase=16;EE65522D-C3EFAF86' | bc

คูณ Hex:

echo 'obase=16;ibase=16;EE65522D*C3EFAF86' | bc

บวก: ใช้ + | หาร: ใช้ / (ไม่ได้เศษ) | หาเศษ (modulus): ใช้ %

echo 'obase=16;ibase=16;EE65522D%C3EFAF86' | bc

ผลลัพธ์: 2A75A2A7 (เศษจากการหาร)


เกี่ยวกับผู้เขียน

Kevin Arrows — MCTS, 10+ ปีประสบการณ์