nl:: Weave::การเข้ารหัส

เนมสเปซนี้มีฟังก์ชันดังต่อไปนี้

สรุป

  • การเรียงลําดับไบต์ใหม่ตามค่าสําหรับประเภท 16, 32 และ 64 บิต
  • การเข้าถึงหน่วยความจําหน่วยความจําที่ง่ายและมีประสิทธิภาพ อาจตรงกันกับตําแหน่งของหน่วยความจําที่มีการจัดแบ่งไฟล์เป็นไบต์เดียว หรือไม่มีการจัดเรียงไบต์ซ้ํา สามารถจัดส่งได้ในระดับ 8, 16, 32 และ 64 บิต ทั้งโดยมีและไม่มีการจัดการตัวชี้

ฟังก์ชัน

Get8(const uint8_t *p)
uint8_t
อ่านค่าหน่วยความจํา 8 บิตที่ที่อยู่ตรงตําแหน่งเริ่มต้นหรืออาจไม่สอดคล้องกัน
Put8(uint8_t *p, uint8_t v)
void
เขียนไบต์หน่วยความจําของระบบที่อาจไม่ได้จัดเรียงของไบต์ระบบเป้าหมายโดยเรียงลําดับค่า 8 บิตไปยังที่อยู่ตัวชี้ที่ระบุ
Read8(uint8_t *& p)
uint8_t
อ่านค่าหน่วยความจํา 16 บิตของที่อยู่ IP ที่ระบุอาจไม่สอดคล้องกัน และเพิ่มตัวชี้เป็น 8 บิต (1 ไบต์)
Read8(const uint8_t *& p)
uint8_t
อ่านค่าหน่วยความจํา 16 บิตของที่อยู่ IP ที่ระบุอาจไม่สอดคล้องกัน และเพิ่มตัวชี้เป็น 8 บิต (1 ไบต์)
Swap16(uint16_t v)
uint16_t
วิธีนี้จะทําการสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่า 16 บิตที่ระบุ
Swap32(uint32_t v)
uint32_t
การดําเนินการนี้จะสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่า 32 บิตที่ระบุ
Swap64(uint64_t v)
uint64_t
การดําเนินการนี้จะทําการสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่าแบบ 64 บิตที่ระบุ
Write8(uint8_t *& p, uint8_t v)
void
เขียนค่าหน่วยความจํา 8 บิตที่อาจไม่ถูกต้องในแนวเดียวกับที่อยู่ตัวชี้ที่ระบุ และเพิ่มตัวชี้ทีละ 8 บิต (1 ไบต์)

เนมสเปซ

nl::Weave::การเข้ารหัส::BigEndian

เนมสเปซนี้มีฟังก์ชันดังต่อไปนี้

nl::Weave::Encoding::LittleEndian

เนมสเปซนี้มีฟังก์ชันดังต่อไปนี้

ฟังก์ชัน

รับ 8

uint8_t Get8(
  const uint8_t *p
)

อ่านค่าหน่วยความจํา 8 บิตที่ที่อยู่ตรงตําแหน่งเริ่มต้นหรืออาจไม่สอดคล้องกัน

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้อาจไม่สอดคล้องกับการตรวจสอบการอ่านค่า 8 บิต
การคืนสินค้า
ค่า 8 บิตตามที่อยู่ตัวชี้ที่ระบุ

พุต8

void Put8(
  uint8_t *p,
  uint8_t v
)

เขียนไบต์หน่วยความจําของระบบที่อาจไม่ได้จัดเรียงของไบต์ระบบเป้าหมายโดยเรียงลําดับค่า 8 บิตไปยังที่อยู่ตัวชี้ที่ระบุ

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้อาจไม่ใช่แนวที่ตรงกันสําหรับเขียนค่า 8 บิต
[in] v
ค่า 8 บิตสําหรับเขียน

อ่าน 8

uint8_t Read8(
  uint8_t *& p
)

อ่านค่าหน่วยความจํา 16 บิตของที่อยู่ IP ที่ระบุอาจไม่สอดคล้องกัน และเพิ่มตัวชี้เป็น 8 บิต (1 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงที่อยู่ตัวชี้ซึ่งอาจไม่สอดคล้องกัน เพื่ออ่านค่า 8 บิตจากและจากนั้นเพิ่มขึ้นทีละ 8 บิต (1 ไบต์)
การคืนสินค้า
ค่า 8 บิตตามที่อยู่ตัวชี้ที่ระบุ

อ่าน 8

uint8_t Read8(
  const uint8_t *& p
)

อ่านค่าหน่วยความจํา 16 บิตของที่อยู่ IP ที่ระบุอาจไม่สอดคล้องกัน และเพิ่มตัวชี้เป็น 8 บิต (1 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงที่อยู่ตัวชี้คงที่ซึ่งอาจไม่สอดคล้องกัน เพื่ออ่านค่า 8 บิตจากและเพิ่มขึ้นทีละ 8 บิต (1 ไบต์)
การคืนสินค้า
ค่า 8 บิตตามที่อยู่ตัวชี้ที่ระบุ

สลับ16

uint16_t Swap16(
  uint16_t v
)

วิธีนี้จะทําการสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่า 16 บิตที่ระบุ

รายละเอียด
พารามิเตอร์
[in] v
ระบบจะสลับค่า 16 บิตสําหรับลําดับไบต์
การคืนสินค้า
ค่าอินพุต ลําดับไบต์ที่สลับ

สลับ 32

uint32_t Swap32(
  uint32_t v
)

การดําเนินการนี้จะสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่า 32 บิตที่ระบุ

รายละเอียด
พารามิเตอร์
[in] v
สลับค่า 32 บิตสําหรับลําดับไบต์แล้ว
การคืนสินค้า
ค่าอินพุต ลําดับไบต์ที่สลับ

สลับ 64

uint64_t Swap64(
  uint64_t v
)

การดําเนินการนี้จะทําการสลับลําดับของไบต์โดยไม่มีเงื่อนไขตามค่าของค่าแบบ 64 บิตที่ระบุ

รายละเอียด
พารามิเตอร์
[in] v
ระบบจะสลับค่า 64 บิตสําหรับลําดับไบต์
การคืนสินค้า
ค่าอินพุต ลําดับไบต์ที่สลับ

เขียน 8

void Write8(
  uint8_t *& p,
  uint8_t v
)

เขียนค่าหน่วยความจํา 8 บิตที่อาจไม่ถูกต้องในแนวเดียวกับที่อยู่ตัวชี้ที่ระบุ และเพิ่มตัวชี้ทีละ 8 บิต (1 ไบต์)

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงที่อยู่ตัวชี้ซึ่งอาจไม่สอดคล้องกัน เพื่ออ่านค่า 8 บิตจากและจากนั้นเพิ่มขึ้นทีละ 8 บิต (1 ไบต์)
[in] v
ค่า 8 บิตสําหรับเขียน