Преобразует целое число без знака
See Also: EXPONENT()
MANTISSA()
INTNEG()
Преобразует целое число без знака в целое число со знаком.
------------------------------------------------------------------------------
Синтаксис
INTNEG(<nUnsigned|cHexUnsigned>, [<l32Bit>]) --> nSigned
Параметры
<nUnsigned|cHexUnsigned> - преобразуемое число без знака, заданное в
виде десятичного числа или символьной строки шестнадцатеричных цифр.
<l32Bit> - необязательный логический параметр, задающий при значении
.T. интерпретацию преобразуемого целого числа без знака как
32-битового, а при значении .F. или по умолчанию как 16-битового
числа.
Возвращаемое значение
nSigned - целое число со знаком.
Описание
Функция преобразует числа в формате "целое без знака" в формат
"целое со знаком".
Использование параметра <l32Bit> позволяет преобразовывать кроме
16-битовых, также и 32-битовые целые числа. В 16-битовом варианте для
значений параметра <nUnsigned|cHexUnsigned>, меньших или равных +32767
(7FFFh), результаты имеют положительные и совпадающие с исходными
значения.
Для значений в диапазоне от +32768 (8000h) до +65535 (FFFFh)
результаты отрицательны. В 32-битовом варианте положительные
результаты возвращаются для величин, меньших или равных 2147483647,
а для превышающих - отрицательные.
Примечания
. При ошибочных параметрах возвращается 0.
Примеры
. Некоторые примеры преобразований:
? INTNEG(0) // Результат: 0
? INTNEG(-1) // Результат: 0
? INTNEG(30000) // Результат: 30000
? INTNEG(32767) // Результат: 32767
? INTNEG(32768) // Результат: -32768
? INTNEG(32769) // Результат: -32767