nl::Weave::Encoding::LittleEndian

เนมสเปซนี้มีฟังก์ชันสำหรับรายการต่อไปนี้

สรุป

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

ในระบบโฮสต์ของ Little Endian จะไม่มีการเรียงลำดับไบต์ใหม่ตามจริง สำหรับระบบอื่น การจัดเรียงไบต์ใหม่จะมีรูปแบบตามความเหมาะสม

ฟังก์ชัน

Get16(const uint8_t *p)
uint16_t
ใช้งานหน่วยความจำที่อาจไม่อยู่ในแนวสำหรับค่า 16 บิตที่เรียงลำดับแบบเอนเดียนขนาดเล็กจากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่เท่าที่จำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
Get32(const uint8_t *p)
uint32_t
ใช้งานหน่วยความจำที่อาจไม่ตรงตำแหน่งสำหรับค่า 32 บิตที่เรียงลำดับแบบ Endian ไบต์เล็กๆ จากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
Get64(const uint8_t *p)
uint64_t
อ่านค่าหน่วยความจำที่อาจไม่ตรงตำแหน่งสำหรับค่า 64 บิตที่เรียงลำดับแบบเอนเดียนขนาดเล็กจากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย
HostSwap16(uint16_t v)
uint16_t
การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 16 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น
HostSwap32(uint32_t v)
uint32_t
การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 32 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น
HostSwap64(uint64_t v)
uint64_t
การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 64 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น
Put16(uint8_t *p, uint16_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย
Put32(uint8_t *p, uint32_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย
Put64(uint8_t *p, uint64_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย
Read16(uint8_t *& p)
uint16_t
อ่านค่าหน่วยความจำของไบต์เอนเดียนขนาดเล็กที่มีอันดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ทีละ 16 บิต (2 ไบต์)
Read16(const uint8_t *& p)
uint16_t
อ่านค่าหน่วยความจำของไบต์เอนเดียนขนาดเล็กที่มีอันดับ 16 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้ทีละ 16 บิต (2 ไบต์)
Read32(uint8_t *& p)
uint32_t
อ่านค่าหน่วยความจำแบบเอนเดียนบิตที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)
Read32(const uint8_t *& p)
uint32_t
อ่านค่าหน่วยความจำแบบเอนเดียนบิตที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)
Read64(uint8_t *& p)
uint64_t
อ่านค่าหน่วยความจำแบบเอนเดียนเล็กๆ ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ อาจไม่ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 64 บิต (8 ไบต์)
Read64(const uint8_t *& p)
uint64_t
อ่านค่าหน่วยความจำแบบเอนเดียนเล็กๆ ที่เรียงลำดับ 64 บิตจากที่อยู่ตัวชี้ที่ระบุ อาจไม่ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 64 บิต (8 ไบต์)
Write16(uint8_t *& p, uint16_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนวและเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย
Write32(uint8_t *& p, uint32_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย
Write64(uint8_t *& p, uint64_t v)
void
เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย

ฟังก์ชัน

Get16

uint16_t Get16(
  const uint8_t *p
)

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

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ตัวชี้ (อาจไม่ตรงตำแหน่ง) สำหรับการอ่านค่าที่มีลำดับของไบต์เล็ก 16 บิต
การคืนสินค้า
เรียงลำดับไบต์ค่า 16 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Get32

uint32_t Get32(
  const uint8_t *p
)

ใช้งานหน่วยความจำที่อาจไม่ตรงตำแหน่งสำหรับค่า 32 บิตที่เรียงลำดับแบบ Endian ไบต์เล็กๆ จากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ตัวชี้ (อาจไม่ตรงตำแหน่ง) สำหรับการอ่านค่าที่มีลำดับของไบต์เล็ก 32 บิตแบบ 32 บิต
การคืนสินค้า
เรียงลำดับไบต์ค่า 32 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Get64

uint64_t Get64(
  const uint8_t *p
)

อ่านค่าหน่วยความจำที่อาจไม่ตรงตำแหน่งสำหรับค่า 64 บิตที่เรียงลำดับแบบเอนเดียนขนาดเล็กจากที่อยู่ตัวชี้ที่ระบุ ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็นเพื่อให้ระบบเป้าหมายใส่ค่าในการจัดลำดับไบต์ของระบบเป้าหมาย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ตัวชี้ (อาจไม่ตรงตำแหน่ง) สำหรับการอ่านค่าที่มีลำดับของไบต์เล็ก 64 บิต
การคืนสินค้า
หากจำเป็น ระบบจะเรียงลำดับค่า 64 บิตในที่อยู่ของตัวชี้ที่ระบุใหม่

HostSwap16

uint16_t HostSwap16(
  uint16_t v
)

การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 16 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายขนาดเล็กของ Endian สิ่งนี้จึงเป็นแบบที่ไม่มีการดำเนินการและในระบบเป้าหมายขนาดใหญ่ของ Endian สิ่งนี้จะดำเนินการจัดเรียงใหม่

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

HostSwap32

uint32_t HostSwap32(
  uint32_t v
)

การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 32 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายขนาดเล็กของ Endian สิ่งนี้จึงเป็นแบบที่ไม่มีการดำเนินการและในระบบเป้าหมายขนาดใหญ่ของ Endian สิ่งนี้จะดำเนินการจัดเรียงใหม่

รายละเอียด
พารามิเตอร์
[in] v
ค่า 32 บิตที่จะสลับลำดับไบต์
การคืนสินค้า
สลับลำดับไบต์ของค่าอินพุต (หากจำเป็น)

HostSwap64

uint64_t HostSwap64(
  uint64_t v
)

การดำเนินการนี้จะดำเนินการตามเงื่อนไขตามที่จำเป็นสำหรับระบบเป้าหมาย การสลับลำดับไบต์ตามค่าของค่า 64 บิตที่ระบุ ซึ่งสันนิษฐานว่าอยู่ในการเรียงลำดับไบต์เอนเดียนน้อยไปยังระบบเป้าหมาย (เช่น

โฮสต์) การจัดลำดับไบต์

ดังนั้น ในระบบเป้าหมายขนาดเล็กของ Endian สิ่งนี้จึงเป็นแบบที่ไม่มีการดำเนินการและในระบบเป้าหมายขนาดใหญ่ของ Endian สิ่งนี้จะดำเนินการจัดเรียงใหม่

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

Put16

void Put16(
  uint8_t *p,
  uint16_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายวางค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย

รายละเอียด
พารามิเตอร์
[in] p
ที่อยู่ของตัวชี้ ซึ่งอาจไม่ได้ตรงแนว เพื่อเขียนไบต์ข้อมูลของระบบเป้าหมายที่มีลำดับค่า 16 บิตในการจัดเรียงไบต์เอนเดียนน้อย
[in] v
ค่า 16 บิตที่จะเขียนจะเรียงลำดับไบต์ใหม่หากจำเป็น

Put32

void Put32(
  uint8_t *p,
  uint32_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายวางค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย

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

Put64

void Put64(
  uint8_t *p,
  uint64_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย

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

Read16

uint16_t Read16(
  uint8_t *& p
)

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

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

Read16

uint16_t Read16(
  const uint8_t *& p
)

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

รายละเอียด
พารามิเตอร์
[in,out] p
การอ้างอิงไปยังที่อยู่ของตัวชี้คงที่ (อาจไม่อยู่ในแนวเดียวกัน) ในการอ่านค่าเรียงลำดับไบต์เอนเดียนขนาดเล็ก 16 บิตจากแล้วไปเพิ่มทีละ 16 บิต (2 ไบต์)
การคืนสินค้า
สลับลำดับไบต์ด้วยค่า 16 บิตในที่อยู่ของตัวชี้ที่ระบุ หากจำเป็น

Read32

uint32_t Read32(
  uint8_t *& p
)

อ่านค่าหน่วยความจำแบบเอนเดียนบิตที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)

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

Read32

uint32_t Read32(
  const uint8_t *& p
)

อ่านค่าหน่วยความจำแบบเอนเดียนบิตที่เรียงลำดับ 32 บิตจากที่อยู่ตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามความจำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าตามลำดับไบต์ของระบบเป้าหมาย และเพิ่มตัวชี้อีก 32 บิต (4 ไบต์)

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

Read64

uint64_t Read64(
  uint8_t *& p
)

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

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

Read64

uint64_t Read64(
  const uint8_t *& p
)

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

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

Write16

void Write16(
  uint8_t *& p,
  uint16_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 16 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายวางค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย

รายละเอียด
พารามิเตอร์
[in] p
การอ้างอิงไปยังที่อยู่ตัวชี้ (อาจไม่ตรงแนว) เพื่อเขียนค่าไบต์ระบบเป้าหมายที่มีลำดับ 16 บิตโดยเรียงลำดับไบต์เอนเดียนน้อย แล้วเพิ่มทีละ 16 บิต (2 ไบต์)
[in] v
ค่า 16 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Write32

void Write32(
  uint8_t *& p,
  uint32_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 32 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว ดำเนินการเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายวางค่าในการจัดเรียงไบต์เอนเดียนเล็กน้อย

รายละเอียด
พารามิเตอร์
[in] p
การอ้างอิงไปยังที่อยู่ตัวชี้ (อาจไม่ตรงแนว) เพื่อเขียนค่าไบต์ของระบบเป้าหมายที่มีลำดับ 32 บิตให้เรียงลำดับไบต์ปลายทางเล็กน้อย จากนั้นจึงเพิ่มขึ้นทีละ 32 บิต (4 ไบต์)
[in] v
ค่า 32 บิตที่จะเขียนจะสลับลำดับไบต์ (หากจำเป็น)

Write64

void Write64(
  uint8_t *& p,
  uint64_t v
)

เขียนหน่วยความจำสำหรับไบต์ของระบบเป้าหมายที่เรียงลำดับค่า 64 บิตกับที่อยู่ของตัวชี้ที่ระบุ ซึ่งอาจไม่ได้ตรงแนว และเรียงลำดับไบต์ใหม่ตามที่จำเป็น เพื่อให้ระบบเป้าหมายใส่ค่าให้อยู่ในลำดับไบต์เอนเดียนน้อย

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