nl::Weave::Encoding::BigEndian

Namespace ini menyediakan fungsi untuk:

Ringkasan

  • Melakukan penataan ulang byte, relatif terhadap sistem host, berdasarkan nilai byte big endian yang diurutkan untuk jenis 16-, 32-, dan 64-bit.
  • Dengan aman melakukan akses yang dipetakan memori sederhana dan efisien, berpotensi ke lokasi memori yang tidak selaras, dengan atau tanpa penyusunan ulang byte, ke jumlah urutan byte endian besar 8, 16-, 32-, dan 64-bit, baik dengan dan tanpa manajemen pointer.

Pada sistem {i>host<i} big endian, tidak akan terjadi penyusunan ulang byte yang sebenarnya. Di sistem lain, penyusunan ulang byte ditentukan sebagaimana mestinya.

Fungsi

Get16(const uint8_t *p)
uint16_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.
Get32(const uint8_t *p)
uint32_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.
Get64(const uint8_t *p)
uint64_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.
HostSwap16(uint16_t v)
uint16_t
Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 16-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu
HostSwap32(uint32_t v)
uint32_t
Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai nilai 32-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu
HostSwap64(uint64_t v)
uint64_t
Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 64-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu
Put16(uint8_t *p, uint16_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 16-bit ke alamat pointer yang ditentukan, melakukan penataan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.
Put32(uint8_t *p, uint32_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.
Put64(uint8_t *p, uint64_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.
Read16(uint8_t *& p)
uint16_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 16-bit (2 byte).
Read16(const uint8_t *& p)
uint16_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 16-bit (2 byte).
Read32(uint8_t *& p)
uint32_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 32-bit (4 byte).
Read32(const uint8_t *& p)
uint32_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 32-bit (4 byte).
Read64(uint8_t *& p)
uint64_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 64-bit (8 byte).
Read64(const uint8_t *& p)
uint64_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 64-bit (8 byte).
Write16(uint8_t *& p, uint16_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 16-bit ke alamat pointer yang ditentukan, melakukan penataan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.
Write32(uint8_t *& p, uint32_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.
Write64(uint8_t *& p, uint64_t v)
void
Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Fungsi

Get16

uint16_t Get16(
  const uint8_t *p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk membaca nilai urutan byte endian besar 16-bit.
Hasil
Nilai 16-bit pada alamat pointer yang ditentukan, jika perlu, byte diubah urutannya.

Get32

uint32_t Get32(
  const uint8_t *p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk membaca nilai urutan byte endian besar 32-bit.
Hasil
Nilai 32-bit pada alamat pointer yang ditentukan, jika perlu, byte diubah urutannya.

Get64

uint64_t Get64(
  const uint8_t *p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte sistem target.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk membaca nilai urutan byte endian besar 64-bit.
Hasil
Nilai 64-bit pada alamat pointer yang ditentukan, jika perlu, byte diubah urutannya.

HostSwap16

uint16_t HostSwap16(
  uint16_t v
)

Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 16-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu

host).

Akibatnya, pada sistem target bit endian, ini adalah tanpa pengoperasian dan pada sistem target big endian, ini melakukan pengurutan ulang.

Detail
Parameter
[in] v
Nilai 16-bit yang akan ditukar urutan byte.
Hasil
Nilai input, jika perlu, urutan byte yang ditukar.

HostSwap32

uint32_t HostSwap32(
  uint32_t v
)

Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai nilai 32-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu

host).

Akibatnya, pada sistem target bit endian, ini adalah tanpa pengoperasian dan pada sistem target big endian, ini melakukan pengurutan ulang.

Detail
Parameter
[in] v
Nilai 32-bit yang akan ditukar urutan byte.
Hasil
Nilai input, jika perlu, urutan byte yang ditukar.

HostSwap64

uint64_t HostSwap64(
  uint64_t v
)

Ini secara kondisional melakukan, sebagaimana diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 64-bit yang ditentukan, dianggap dalam pengaturan byte endian besar ke sistem target (yaitu

host).

Akibatnya, pada sistem target bit endian, ini adalah tanpa pengoperasian dan pada sistem target big endian, ini melakukan pengurutan ulang.

Detail
Parameter
[in] v
Nilai 64-bit yang akan ditukar urutan byte.
Hasil
Nilai input, jika perlu, urutan byte yang ditukar.

Put16

void Put16(
  uint8_t *p,
  uint16_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 16-bit ke alamat pointer yang ditentukan, melakukan penataan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk menulis byte sistem target yang memerintahkan nilai 16-bit dalam pengurutan byte big endian.
[in] v
Nilai 16-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.

Put32

void Put32(
  uint8_t *p,
  uint32_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk menulis byte sistem target yang memerintahkan nilai 32-bit dalam pengurutan byte big endian.
[in] v
Nilai 32-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.

Put64

void Put64(
  uint8_t *p,
  uint64_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Alamat pointer, yang berpotensi tidak selaras, untuk menulis byte sistem target yang memerintahkan nilai 64-bit dalam pengurutan byte big endian.
[in] v
Nilai 64-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.

Read16

uint16_t Read16(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 16-bit (2 byte).

Detail
Parameter
[in,out] p
Sebuah referensi ke alamat pointer, berpotensi tidak selaras, untuk membaca byte 16-bit big endian yang diurutkan dari dan kemudian meningkat sebesar 16-bit (2 byte).
Hasil
Nilai 16-bit di alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Read16

uint16_t Read16(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang dipesan nilai 16-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 16-bit (2 byte).

Detail
Parameter
[in,out] p
Sebuah referensi ke alamat pointer konstan, berpotensi tidak selaras, untuk membaca byte big endian 16-bit yang diurutkan dari dan kemudian meningkat sebesar 16-bit (2 byte).
Hasil
Nilai 16-bit di alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Read32

uint32_t Read32(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 32-bit (4 byte).

Detail
Parameter
[in,out] p
Sebuah referensi ke alamat pointer, berpotensi tidak selaras, untuk membaca byte 32-bit big endian yang diurutkan dari dan kemudian meningkat sebesar 32-bit (4 byte).
Hasil
Nilai 32-bit di alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Read32

uint32_t Read32(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang memerintahkan nilai 32-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 32-bit (4 byte).

Detail
Parameter
[in,out] p
Sebuah referensi ke alamat pointer konstanta, berpotensi tidak selaras, untuk membaca byte 32-bit big endian yang diurutkan dari dan kemudian meningkat sebesar 32-bit (4 byte).
Hasil
Nilai 32-bit di alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Read64

uint64_t Read64(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 64-bit (8 byte).

Detail
Parameter
[in,out] p
Referensi ke alamat pointer, berpotensi tidak selaras, untuk membaca byte big endian 64-bit yang diurutkan dari dan kemudian meningkat sebesar 64-bit (8 byte).
Hasil
Nilai 64-bit pada alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Read64

uint64_t Read64(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte endian besar yang dipesan nilai 64-bit dari alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target menempatkan nilai dalam pengurutan byte sistem target, dan menaikkan pointer sebesar 64-bit (8 byte).

Detail
Parameter
[in,out] p
Sebuah referensi ke alamat pointer konstan, berpotensi tidak selaras, untuk membaca byte big endian 64-bit yang diurutkan dari dan kemudian meningkat sebesar 64-bit (8 byte).
Hasil
Nilai 64-bit pada alamat pointer yang ditentukan, jika perlu, urutan byte yang ditukar.

Write16

void Write16(
  uint8_t *& p,
  uint16_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 16-bit ke alamat pointer yang ditentukan, melakukan penataan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Sebuah referensi ke alamat pointer, berpotensi tidak selaras, untuk menulis byte sistem target memerintahkan nilai 16-bit dalam urutan byte endian besar dan kemudian meningkat sebesar 16-bit (2 byte).
[in] v
Nilai 16-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.

Write32

void Write32(
  uint8_t *& p,
  uint32_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Sebuah referensi ke alamat pointer, berpotensi tidak selaras, untuk menulis byte sistem target memerintahkan nilai 32-bit dalam urutan byte endian besar dan kemudian meningkat sebesar 32-bit (4 byte).
[in] v
Nilai 32-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.

Write64

void Write64(
  uint8_t *& p,
  uint64_t v
)

Melakukan penulisan memori yang berpotensi tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan penyusunan ulang byte, sebagaimana diperlukan, agar sistem target memasukkan nilai dalam pengurutan byte big endian.

Detail
Parameter
[in] p
Sebuah referensi ke alamat pointer, berpotensi tidak selaras, untuk menulis byte sistem target memerintahkan nilai 64-bit dalam urutan byte endian besar dan kemudian meningkat sebesar 64-bit (8 byte).
[in] v
Nilai 64-bit yang akan ditulis, jika perlu, urutan byte yang ditukar.