Spec-Zone.ru › Haskell 7

Data.Word

Copyright (c) The University of Glasgow 2001
License BSD-style (see the file libraries/base/LICENSE)
Maintainer libraries@haskell.org
Stability experimental
Portability portable
Safe Haskell Safe
Language Haskell2010

Содержание

  • Беззнаковые целочисленные типы
  • byte swapping
  • Примечания

Описание

Беззнаковые целочисленные типы.

Беззнаковые целочисленные типы

data Word :: * Source

A Word is an unsigned integral type, with the same size as Int.

Экземпляры

Bounded Word
Enum Word
Eq Word
Integral Word
Data Word
Num Word
Ord Word
Read Word
Real Word
Show Word
Ix Word
FiniteBits Word
Bits Word
Storable Word
PrintfArg Word

data Word8 Source

8-битный беззнаковый целочисленный тип

Экземпляры

Bounded Word8
Enum Word8
Eq Word8
Integral Word8
Data Word8
Num Word8
Ord Word8
Read Word8
Real Word8
Show Word8
Ix Word8
FiniteBits Word8
Bits Word8
Storable Word8
PrintfArg Word8

data Word16 Source

16-битный беззнаковый целочисленный тип

Экземпляры

Bounded Word16
Enum Word16
Eq Word16
Integral Word16
Data Word16
Num Word16
Ord Word16
Read Word16
Real Word16
Show Word16
Ix Word16
FiniteBits Word16
Bits Word16
Storable Word16
PrintfArg Word16

data Word32 Source

32-битный беззнаковый целочисленный тип

Экземпляры

Bounded Word32
Enum Word32
Eq Word32
Integral Word32
Data Word32
Num Word32
Ord Word32
Read Word32
Real Word32
Show Word32
Ix Word32
FiniteBits Word32
Bits Word32
Storable Word32
PrintfArg Word32

data Word64 Source

64-битный беззнаковый целочисленный тип

Примеры использования

Ограниченный Word64
Перечислимый Word64
Eq Word64
Целочисленный Word64
Data Word64
Num Word64
Ord Word64
Чтение Word64
Действительное Word64
Вывод Word64
Ix Word64
Ограниченное количество бит Word64
Биты Word64
Хранимая Word64
PrintfArg Word64

Перестановка байтов

byteSwap16 :: Word16 -> Word16 Исходный код

Меняет местами байты в Word16.

С версии: 4.7.0.0

byteSwap32 :: Word32 -> Word32 Исходный код

Меняет местами байты в Word32.

С версии: 4.7.0.0

byteSwap64 :: Word64 -> Word64 Исходный код

Меняет местами байты в Word64.

С версии: 4.7.0.0

Примечания

  • Все арифметические операции выполняются по модулю 2^n, где n — количество бит в типе. Одним из неявных следствий этого является то, что negate не должно генерировать ошибку при отрицательных аргументах.
  • Для приведения типов целых чисел друг к другу используйте fromIntegral, который специализирован для всех общих случаев и, следовательно, должен быть достаточно быстрым. Приведение типов чисел типа word к целочисленным типам и обратно сохраняет представление, а не знак.
  • Тип безгранично большого целого без знака доступен с помощью Natural.
  • Правила, справедливые для Enum экземпляров над ограниченным типом, таким как Int, (см. раздел отчёта Haskell, посвящённый арифметическим последовательностям) также справедливы для Enum экземпляров над различными типами Word, определёнными здесь.
  • Сдвиги вправо и влево на значения, равные или большие ширины типа, приводят к нулевому результату. Это противоречит поведению в C, которое является неопределённым; распространённая интерпретация — это усечение значения сдвига до ширины типа, например 1 << 32 == 1 в некоторых реализациях C.

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/base-4.8.2.0/Data-Word.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API