Purpose

Return value

Syntax

=DEC2HEX(number,[places])
  • number - The decimal number you want to convert to hexadecimal.
  • places - [optional] Pads the resulting number with zeros up to the specified number of digits. If omitted returns the least number of characters required to represent the number.

Using the DEC2HEX function

The input must be a valid decimal number within the range [ -2^39, 2^39 - 1 ].

Negative Values

Excel internally represents Hexadecimal numbers in binary using 40 bits. The first bit indicates whether the number is positive or negative. The remaining bits indicate the magnitude of the number. Negative numbers are internally represented in binary using two’s complement notation. Two’s complement notation, when converted to hexadecimal, starts at the highest 10 digit hexadecimal number and goes backwards.

Range of DEC2HEX function - 1

Purpose

Return value

Syntax

=DEC2OCT(number,[places])
  • number - The decimal number you want to convert to octal.
  • places - [optional] Pads the resulting octal number with zeros up to the specified number of digits. If omitted returns the least number of characters required to represent the number.

Using the DEC2OCT function

The input must be a valid decimal number within the range [ -2^29, 2^29 - 1 ].

Negative Values

Excel internally represents octal numbers in binary using 30 bits. The first bit indicates whether the number is positive or negative. The remaining bits indicate the magnitude of the number.

The reason why -3 maps to 7777777775 is because excel represents negative numbers internally (in binary) using the two’s complement notation. Two’s complement notation, when converted to Octal, starts at the highest 10 digit octal number and goes backwards.

Range of the DEC2OCT function. - 2