РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1199 of 1593 menu

Переменная binary.LittleEndian

Переменная binary.LittleEndian представляет порядок байтов little-endian (от младшего к старшему) для работы с бинарными данными. Она реализует интерфейс binary.ByteOrder и предоставляет методы для чтения и записи целых чисел без знака в бинарном формате. Little-endian используется в архитектурах процессоров x86 и x86-64, а также во многих протоколах и форматах данных.

Синтаксис

binary.LittleEndian

Методы

binary.LittleEndian.Uint16(b []byte) uint16 binary.LittleEndian.Uint32(b []byte) uint32 binary.LittleEndian.Uint64(b []byte) uint64 binary.LittleEndian.PutUint16(b []byte, v uint16) binary.LittleEndian.PutUint32(b []byte, v uint32) binary.LittleEndian.PutUint64(b []byte, v uint64)

Пример

Давайте прочитаем 16-битное число из среза байтов в формате little-endian:

package main import ( "encoding/binary" "fmt" ) func main() { b := []byte{0xCD, 0xAB} res := binary.LittleEndian.Uint16(b) fmt.Println(res) }

Результат выполнения кода:

43981

Пример

Давайте запишем 32-битное число в срез байтов в формате little-endian:

package main import ( "encoding/binary" "fmt" ) func main() { b := make([]byte, 4) binary.LittleEndian.PutUint32(b, 0x01020304) fmt.Printf("%x", b) }

Результат выполнения кода:

"04030201"

Пример

Давайте сравним порядок байтов little-endian и big-endian для 64-битного числа:

package main import ( "encoding/binary" "fmt" ) func main() { b := make([]byte, 8) binary.LittleEndian.PutUint64(b, 0x0102030405060708) fmt.Printf("Little endian: %x\n", b) binary.BigEndian.PutUint64(b, 0x0102030405060708) fmt.Printf("Big endian: %x\n", b) }

Результат выполнения кода:

"Little endian: 0807060504030201" "Big endian: 0102030405060708"

Смотрите также

  • переменную binary.BigEndian,
    которая представляет порядок байтов big-endian
  • переменную binary.NativeEndian,
    которая представляет нативный порядок байтов системы
  • функцию binary.Read,
    которая читает структурированные бинарные данные
  • функцию binary.Write,
    которая записывает структурированные бинарные данные
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить