Tukar Endianness
Masukan (heks)
Keluaran yang ditukar
Detail teknis
Cara Kerja Alat Tukar Endianness
Apa yang Dilakukan Alat Ini
Alat Tukar Endianness membalik urutan byte dari input heksadesimal dalam ukuran word yang dapat dikonfigurasi (2, 4, atau 8 byte). Alat ini ditujukan untuk mengonversi antara representasi little-endian dan big-endian dari integer lebar tetap yang disimpan sebagai heks, yang sering dibutuhkan saat bekerja dengan format file biner, protokol jaringan, atau alat debugging level rendah yang tidak sepakat soal urutan byte.
Kasus Penggunaan Umum untuk Developer
Reverse engineer menormalkan hex dump dari x86 atau ARM (little-endian) dan PowerPC atau MIPS (secara historis big-endian) agar dapat membandingkan nilai lintas arsitektur. Engineer jaringan mengonversi integer host-byte-order ke network byte order (selalu big-endian) sebelum menyematkannya dalam packet capture. Developer embedded men-debug struktur yang disimpan di flash dengan menyelaraskan ulang byte ke format yang diharapkan oleh tooling analisis mereka.
Format Data, Tipe, atau Varian
Input menerima heks dengan atau tanpa prefiks `0x` dan whitespace sebarang. Output dirender sebagai byte heks huruf kecil yang dipisahkan spasi untuk kejelasan. Ukuran word 2, 4, dan 8 byte masing-masing sesuai dengan integer 16-, 32-, dan 64-bit. Beberapa word ditukar secara independen: dengan ukuran word 4 byte, 12345678 9ABCDEF0 menjadi 78 56 34 12 diikuti oleh F0 DE BC 9A.
Kesalahan Umum dan Kasus Tepi
Input harus berupa jumlah byte utuh (jumlah digit heks genap) dan jumlah word utuh (habis dibagi ukuran word yang dikonfigurasi dalam byte). Ukuran yang tidak cocok akan menghasilkan error alih-alih memotong diam-diam. Network byte order selalu big-endian, sedangkan x86 / ARM menggunakan little-endian — tukar byte saat membaca atau menulis integer wire-format.
Kapan Menggunakan Alat Ini vs Kode
Gunakan alat browser untuk konversi sekali jalan saat membaca dump biner atau debugging. Di dalam kode, utamakan `DataView` dengan flag `littleEndian` yang eksplisit di JavaScript, `byteorder='little'|'big'` pada `int.from_bytes` di Python, `binary.LittleEndian.Uint32` di Go, atau `ntohl` / `htonl` di C — ini lebih jelas soal maksud dan menghindari bolak-balik heks.