Byte stream berisi, yah, byte. Dipecah menjadi apa sebenarnya, itu adalah 8 bit yang terdiri dari 1s dan 0s. Jika itu mewakili angka, itu akan berupa angka dari 0 hingga 255 (yang, saya dapat tambahkan, bukan kebetulan mengapa 4 angka dalam alamat IP selalu berkisar dari 0 hingga 255). Byte stream biasanya antarmuka canggih yang dimaksudkan untuk menyembunyikan array byte dasar yang digunakan untuk menahan buffer lingkaran (Anda mengisi buffer dan menunggu seseorang untuk mengosongkannya, pada saat itu hanya mengisi buffer lagi).
Apa sih yang dilambangkannya? Ya, itu bisa mewakili file teks, atau gambar, atau streaming video langsung. Apa itu adalah sepenuhnya tergantung pada konteks yang membacanya. Representasi hex adalah cara lain untuk mengatakan hal yang sama, meskipun terkadang lebih mudah untuk mengelola byte dalam hal representasi hex mereka daripada angka tetapi itu adalah hal yang sama.
Saat Anda merujuk ke data mentah, Anda biasanya merujuk ke data byte. Data datang tanpa tag yang mengatakan "Saya file gambar!" Biasanya Anda hanya berurusan dengan data mentah ketika Anda tidak benar-benar peduli apa yang mewakili data secara keseluruhan. Misalnya, jika saya ingin mengonversi gambar ke versi hitam dan putih, saya dapat mengatakan untuk membaca data mentah gambar dan untuk setiap 3 byte bacaan (yang sebenarnya merupakan representasi warna merah, representasi warna hijau, dan representasi warna biru), tambahkan nilai angka dan bagi dengan 3, kemudian tulis nilai itu 3 kali. Pada dasarnya apa yang akan saya lakukan adalah rata-rata nilai-nilai piksel merah, hijau, dan biru dan membuat piksel setara abu-abu dari itu. Namun, ketika Anda berbicara tentang melakukan operasi ke data pada tingkat "byte demi byte", Anda tidak perlu
Atau, mungkin Anda ingin menyimpan file dalam database, tetapi ia meminta Anda untuk memasukkan "data mentah" dalam tipe data gumpalan. Ini hanya berarti mengubah data file menjadi array byte besar yang dapat dipahami dan dikelola oleh database. Anda akan menemukan bahwa ketika Anda mengambil nilai itu dari database, itu hanya akan menjadi satu array byte besar seperti yang Anda berikan pada database untuk memulai. Jika data itu adalah file, maka Anda, programmer, harus menafsirkan ulang data byte itu seolah-olah Anda membaca file satu byte pada suatu waktu.
Jika seseorang meminta Anda untuk "membalikkan data 4 byte", saya akan menganggap itu mengacu pada interpretasi angka big-endian vs little-endian, yang menulis angka dimulai dengan byte yang paling atau paling signifikan. Tidak masalah jika suatu angka direpresentasikan sebagai big-endian atau little-endian, hanya saja semua sistem yang membaca angka menafsirkannya secara konsisten.
Ini bukan untuk mengatakan bahwa representasi angka aktual (atau representasi hex dalam hal ini) diubah, hanya bahwa urutan 4 byte ini membuat angka harus dibalik. Jadi katakan Anda memiliki 0x01, 0x02, 0x03, dan 0x04. Untuk membalikkan ini, Anda akan memiliki 0x04, 0x03, 0x02, 0x01 sebagai gantinya. Sistem mungkin akan membaca 4 byte ini dalam urutan terbalik dan karena Anda sudah membalikkannya, nilainya ditafsirkan sama seperti apa yang dimaksudkan dalam data mentah.
Saya harap itu menjelaskannya!