Spec-Zone.ru › Octave 9

4.4 Целочисленные типы данных

Octave поддерживает целочисленные матрицы как альтернативу использованию чисел двойной точности. Можно использовать как знаковые, так и беззнаковые целые числа, представленные 8, 16, 32 или 64 битами. Следует отметить, что для большинства вычислений требуются данные с плавающей точкой, поэтому при участии в числовых вычислениях тип целых чисел часто меняется. По этой причине целые числа обычно используются для хранения данных, а не для вычислений.

Как правило, большинство целочисленных матриц создаётся приведением существующих матриц к целочисленному типу. В следующем примере показано, как привести матрицу к 32-битным целым числам.

float = rand (2, 2)
     ⇒ float = 0.37569   0.92982
                0.11962   0.50876
integer = int32 (float)
     ⇒ integer = 0  1
                  0  1

Как видно, при преобразовании значения с плавающей точкой округляются до ближайшего целого числа.

: tf = isinteger (x)

Возвращает true, если x является целочисленным объектом (int8, uint8, int16 и т. д.).

Обратите внимание, что isinteger (14) имеет значение false, поскольку числовые константы в Octave являются числами с плавающей точкой двойной точности.

См. также: isfloat, ischar, islogical, isstring, isnumeric, isa.

: y = int8 (x)

Преобразует x в 8-битный целочисленный тип.

См. также: uint8, int16, uint16, int32, uint32, int64, uint64.

: y = uint8 (x)

Преобразует x в беззнаковый 8-битный целочисленный тип.

См. также: int8, int16, uint16, int32, uint32, int64, uint64.

: y = int16 (x)

Преобразует x в 16-битный целочисленный тип.

См. также: int8, uint8, uint16, int32, uint32, int64, uint64.

: y = uint16 (x)

Преобразует x в беззнаковый 16-битный целочисленный тип.

См. также: int8, uint8, int16, int32, uint32, int64, uint64.

: y = int32 (x)

Преобразует x в 32-битный целочисленный тип.

См. также: int8, uint8, int16, uint16, uint32, int64, uint64.

: y = uint32 (x)

Преобразует x в беззнаковый 32-битный целочисленный тип.

См. также: int8, uint8, int16, uint16, int32, int64, uint64.

: y = int64 (x)

Преобразует x в 64-битный целочисленный тип.

См. также: int8, uint8, int16, uint16, int32, uint32, uint64.

: y = uint64 (x)

Преобразует x в беззнаковый 64-битный целочисленный тип.

См. также: int8, uint8, int16, uint16, int32, uint32, int64.

: Imax = intmax ()
: Imax = intmax ("type")
: Imax = intmax (var)

Возвращает наибольшее целое число, которое может быть представлено заданным целочисленным типом.

Входным аргументом является либо строка "type", задающая целочисленный тип, либо существующая целочисленная переменная var.

Возможные значения type:

"int8"

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

"int16"

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

"int32"

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

"int64"

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

"uint8"

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

"uint16"

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

"uint32"

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

"uint64"

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

Значение type по умолчанию — "int32".

Пример кода — запрос существующей переменной

x = int8 (1);
intmax (x)
  ⇒ 127

См. также: intmin, flintmax.

: Imin = intmin ()
: Imin = intmin ("type")
: Imin = intmin (var)

Возвращает наименьшее целое число, которое может быть представлено заданным целочисленным типом.

Входным аргументом является либо строка "type", задающая целочисленный тип, либо существующая целочисленная переменная var.

Возможные значения type:

"int8"

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

"int16"

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

"int32"

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

"int64"

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

"uint8"

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

"uint16"

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

"uint32"

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

"uint64"

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

Значение type по умолчанию — "int32".

Пример кода — запрос существующей переменной

x = int8 (1);
intmin (x)
  ⇒ -128

См. также: intmax, flintmax.

: Imax = flintmax ()
: Imax = flintmax ("double")
: Imax = flintmax ("single")
: Imax = flintmax (var)

Возвращает наибольшее целое число, которое может быть представлено последовательно в значении с плавающей точкой.

Входным аргументом является либо строка, задающая тип с плавающей точкой, либо существующая переменная с плавающей точкой var.

Тип по умолчанию — "double", но "single" также является допустимым вариантом. В системах, совместимых со стандартом IEEE 754, flintmax равно 2^{53} для "double" и 2^{24} для "single".

Пример кода — запрос существующей переменной

x = single (1);
flintmax (x)
  ⇒ 16777216

См. также: intmax, realmax, realmin.

  • Целочисленная арифметика

© 1996–2026 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.4.0/Integer-Data-Types.html

Spec-Zone.ru

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