Поделиться через


Функции Dec2Hex и Hex2Dec

Применимо к: приложениям на основе холста малокодовым подключаемым модулям Dataverse классическим потокам приложениям на основе модели Power Pages интерфейсу командной строки Power Platform

Преобразование между шестнадцатеричными текстовыми строками и числами.

Description

Используйте функцию Dec2Hex, чтобы преобразовать число в шестнадцатеричную текстовую строку. Dec2Hex выдает символы от 0 до 9 и символы верхнего регистра от A до F; при необходимости используйте функцию Строчные, чтобы преобразовать результат в нижний регистр. Dec2Hex усекает входное число до целого числа, как если бы сначала была применена функция Усечь. Используйте Разряды, чтобы дополнить положительное число ведущими 0 (нулями) и ограничить длину вывода; Разряды игнорируется, если входное число отрицательный.

Используйте функцию Hex2Dec для преобразования текстовой строки, содержащей шестнадцатеричные цифры (от 0 до 9 и от A до F) в число. Допускаются символы верхнего и нижнего регистра. В Hex2Dec можно передать не более 10 шестнадцатеричных символов.

Обе эти функции работают с 40-битным целым числом с дополнением до двух. Диапазон допустимых значений для обеих функций — от шестнадцатеричного 8000000000 или десятичного -549755813888 до шестнадцатеричного 7FFFFFFFFF или десятичного 549755813887.

Если этим функциям передать одно число или текстовую строку, возвращается один результат. Если передать таблицу с одним столбцом, возвращается таблица с одним столбцом, содержащим результаты вычислений — по одному результату для каждой записи в таблице аргументов. Таблицу с несколькими столбцами можно преобразовать в таблицу с одним столбцом, как описано в статье об использовании таблиц.

Если входное значение выходит за пределы диапазона или содержит недопустимые шестнадцатеричные символы, возвращается ошибка ErrorKind.Numeric. Если входные данные представляли собой таблицу с одним столбцом, ошибка встраивается в таблицу выходных данных.

Синтаксис

Dec2Hex( Number [, Places] )

  • Number — обязательный аргумент. Число для преобразования в шестнадцатеричное.
  • Places — необязательно. Количество символов, которые следует использовать, если число положительное. Если Places опущено, Dec2Hex использует минимально необходимое количество символов. Если указан этот параметр и результат не помещается в предоставленное пространство, возвращается ошибка ErrorKind.Numeric. Places игнорируется, если число для преобразования отрицательное.

Hex2Dec( HexString )

  • HexString — обязательный аргумент. Строка шестнадцатеричных цифр для преобразования в число.

Примеры

Базовое использование Hex2Dec

Формула Result
Hex2Dec( "A5" ) 165
Hex2Dec( "FFFFFFFF5B") -165
Hex2Dec( "c8d" ) 3213
Hex2Dec( "fffffff373" ) -3213
Hex2Dec( "ffffffffff" ) -1
Hex2Dec( "ffffffffffff" ) error (out of range)
Hex2Dec( "43j" ) error (invalid hexadecimal character)
Hex2Dec( [ "A", "12", "FFFF" ] ) [ 10, 18, 65535 ]
Hex2Dec( [ "3", "E", "I", "B" ] ) [ 3, 14, error (invalid hexadecimal character), 11 ]

Базовое использование Dec2Hex

Формула Result
Dec2Hex( 165 ) "A5"
Dec2Hex( -165 ) "FFFFFFFF5B"
Dec2Hex( 3213 ) "c8d"
Dec2Hex( -3213 ) "FFFFFFF373"
Dec2Hex( -1 ) "FFFFFFFFFF"
Dec2Hex( 3.74 ) "3"
Dec2Hex( -3.74 ) "FFFFFFFFFD"
Dec2Hex( [ 10, 255, -16 ] ) [ "A", "FF", "FFFFFFFFF0" ]
Dec2Hex( 1e45 ) error (out of range)
Dec2Hex( [ 1, 1e-45, 1e45, 2 ] ) [ "1", "0", error (out of range), "2" ]

Базовое использование Dec2Hex с аргументом "Places"

Формула Result
Dec2Hex( 45780 ) "B2D4"
Dec2Hex( 45780, 4 ) "B2D4"
Dec2Hex( 45780, 5 ) "0B2D4"
Dec2Hex( 45780, 6 ) "00B2D4"
Dec2Hex( 45780, 3 ) error (not enough space)
Dec2Hex( 45780, 11 ) error (out of range)
Dec2Hex( -45780 ) "FFFFFF4D2C"
Dec2Hex( -45780, 4 ) "FFFFFF4D2C"
Dec2Hex( -45780, 6 ) "FFFFFF4D2C"
Dec2Hex( -45780, 10 ) "FFFFFF4D2C"
Dec2Hex( -45780, 11 ) error (out of range)

Базовое использование Dec2Hex с таблицами с одним столбцом и аргументом "Places"

Формула Result
Dec2Hex( [ 10, 255, -16 ], [ 1, 2, 3 ] ) [ "A", "FF", "FFFFFFFFF0" ]
Dec2Hex( [ 10, 255, -16 ], 4 ) [ "000A", "00FF", "FFFFFFFFF0" ]
Dec2Hex( 255, [0, 1, 2, 3] ) [ error (not enough space), error (not enough space), "FF", "0FF" ]