nl::Weave::Encoding::BigEndian

Namespace ini menyediakan fungsi untuk:

Ringkasan

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

Pada sistem {i>host<i} big endian, tidak akan terjadi pengurutan ulang byte aktual. Pada sistem lain, pengubahan urutan byte dilakukan sesuai kebutuhan.

Fungsi

Get16(const uint8_t *p)
uint16_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat 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 diurutkan dengan nilai 32-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat 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 diurutkan dengan nilai 64-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat memasukkan nilai dalam pengurutan byte sistem target.
HostSwap16(uint16_t v)
uint16_t
Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 16-bit yang ditentukan, yang dianggap dalam pengurutan byte endian besar ke sistem target (yaitu
HostSwap32(uint32_t v)
uint32_t
Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 32-bit yang ditentukan, yang dianggap dalam pengurutan byte endian besar ke sistem target (yaitu
HostSwap64(uint64_t v)
uint64_t
Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 64-bit yang ditentukan, yang dianggap dalam pengurutan 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 pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.
Put32(uint8_t *p, uint32_t v)
void
Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.
Put64(uint8_t *p, uint64_t v)
void
Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.
Read16(uint8_t *& p)
uint16_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah 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 diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 16-bit (2 byte).
Read32(uint8_t *& p)
uint32_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 32-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebanyak 32-bit (4 byte).
Read32(const uint8_t *& p)
uint32_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 32-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebanyak 32-bit (4 byte).
Read64(uint8_t *& p)
uint64_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 64-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 64-bit (8 byte).
Read64(const uint8_t *& p)
uint64_t
Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 64-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah 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 pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.
Write32(uint8_t *& p, uint32_t v)
void
Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.
Write64(uint8_t *& p, uint64_t v)
void
Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan 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 diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat memasukkan nilai dalam pengurutan byte sistem target.

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

Get32

uint32_t Get32(
  const uint8_t *p
)

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

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

Get64

uint64_t Get64(
  const uint8_t *p
)

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

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

HostSwap16

uint16_t HostSwap16(
  uint16_t v
)

Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 16-bit yang ditentukan, yang dianggap dalam pengurutan byte endian besar ke sistem target (yaitu

{i>host<i}) dalam urutan byte.

Akibatnya, pada sistem target bit endian, model ini tidak beroperasi tanpa pengoperasian dan pada sistem target endian besar, metode ini melakukan pengurutan ulang.

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

HostSwap32

uint32_t HostSwap32(
  uint32_t v
)

Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 32-bit yang ditentukan, yang dianggap dalam pengurutan byte endian besar ke sistem target (yaitu

{i>host<i}) dalam urutan byte.

Akibatnya, pada sistem target bit endian, model ini tidak beroperasi tanpa pengoperasian dan pada sistem target endian besar, metode ini melakukan pengurutan ulang.

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

HostSwap64

uint64_t HostSwap64(
  uint64_t v
)

Secara kondisional, ini diperlukan untuk sistem target, pertukaran urutan byte dengan nilai dari nilai 64-bit yang ditentukan, yang dianggap dalam pengurutan byte endian besar ke sistem target (yaitu

{i>host<i}) dalam urutan byte.

Akibatnya, pada sistem target bit endian, model ini tidak beroperasi tanpa pengoperasian dan pada sistem target endian besar, metode ini melakukan pengurutan ulang.

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

Put16

void Put16(
  uint8_t *p,
  uint16_t v
)

Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 16-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.

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

Put32

void Put32(
  uint8_t *p,
  uint32_t v
)

Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.

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

Put64

void Put64(
  uint8_t *p,
  uint64_t v
)

Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.

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

Read16

uint16_t Read16(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 16-bit (2 byte).

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

Read16

uint16_t Read16(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 16-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 16-bit (2 byte).

Detail
Parameter
[in,out] p
Referensi ke alamat pointer konstanta, yang berpotensi tidak selaras, untuk membaca nilai pesanan byte big endian 16-bit dari dan kemudian bertambah 16-bit (2 byte).
Hasil
Nilai 16-bit pada alamat pointer yang ditentukan, jika perlu, urutan byte ditukar.

Read32

uint32_t Read32(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 32-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebanyak 32-bit (4 byte).

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

Read32

uint32_t Read32(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 32-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebanyak 32-bit (4 byte).

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

Read64

uint64_t Read64(
  uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 64-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 64-bit (8 byte).

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

Read64

uint64_t Read64(
  const uint8_t *& p
)

Melakukan pembacaan memori yang berpotensi tidak selaras dari byte big endian yang diurutkan dengan nilai 64-bit dari alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte sistem target, dan menambah pointer sebesar 64-bit (8 byte).

Detail
Parameter
[in,out] p
Referensi ke alamat pointer konstanta, yang berpotensi tidak selaras, untuk membaca nilai pesanan byte big endian 64-bit dari dan kemudian bertambah 64- bit (8 byte).
Hasil
Nilai 64-bit pada alamat pointer yang ditentukan, jika perlu, urutan byte 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 pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.

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

Write32

void Write32(
  uint8_t *& p,
  uint32_t v
)

Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 32-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan nilai dalam pengurutan byte big endian.

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

Write64

void Write64(
  uint8_t *& p,
  uint64_t v
)

Melakukan penulisan memori yang kemungkinan tidak selaras dari byte sistem target yang diurutkan dengan nilai 64-bit ke alamat pointer yang ditentukan, melakukan pengurutan ulang byte, jika diperlukan, agar sistem target dapat menempatkan 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 big endian dan kemudian bertambah 64-bit (8 byte).
[in] v
Nilai 64-bit yang akan ditulis, jika perlu, urutan byte ditukar.