MACH-SWAP(3)MACH-SWAP(3)

NAME
beswap2, beswap4, beswap8, beieeeftoa32, beieeeftoa64, beieeeftoa80, beload2, beload4, beload8, leswap2, leswap4, leswap8, leieeeftoa32, leieeeftoa64, leieeeftoa80, leload2, leload4, leload8, ieeeftoa32, ieeeftoa64 – machine-independent access to byte-ordered data

SYNOPSIS
#include <u.h>
#include <libc.h>
#include <mach.h>
u16int beswap2(u16int u)
u32int    beswap4(u32int u)
u64int    beswap8(u64int u)
int     beieeeftoa32(char *a, uint n, void *f)
int      beieeeftoa64(char *a, uint n, void *f)
int      beieeeftoa80(char *a, uint n, void *f)
u16int beload2(uchar *p)
u32int    beload4(uchar *p)
u64int    beload8(uchar *p)
u16int leswap2(u16int u)
u32int    leswap4(u32int u)
u64int    leswap8(u64int u)
int     leieeeftoa32(char *a, uint n, void *f)
int      leieeeftoa64(char *a, uint n, void *f)
int      leieeeftoa80(char *a, uint n, void *f)
u16int leload2(uchar *p)
u32int    leload4(uchar *p)
u64int    leload8(uchar *p)
int     ieeeftoa32(char *a, uint n, u32int u)
int      ieeeftoa64(char *a, uint n, u32int hi, u32int lo)

DESCRIPTION
These functions provide machine-independent access to data in a particular byte order.
Beswap2, beswap4, and beswap8 return the 2-byte, 4-byte, and 8-byte big-endian representation of the bytes in val, respectively.
Beload2, beload4, and beload8 return the 2-byte, 4-byte, and 8-byte big-endian interpretation of the bytes at p, respectively.
Beieeeftoa32, beieeeftoa64, and beieeeftoa80 format the big-endian 4-byte, 8-byte, or 10-byte IEEE floating-point value at f into the n-byte string buffer a.
Leswap2, leswap4, etc. are the little-endian equivalents of the routines just described.
Ieeeftoa32 and ieeeftoa64 format a local machine byte-order floating-point value into the n-byte string buffer a. Ieeeftoa32 expects a 32-bit floating-point value stored in the bits of u. Ieeeftoa64 expects a 64-bit floating-point value whose high 32-bits are in hi and low 32-bits are in lo.

SOURCE
/home/opt/plan9port/src/libmach

SEE ALSO
mach(3)

Space Glenda