Как определить, является ли шестнадцатеричное значение отрицательным?

Я только что научился читать шестнадцатеричные значения. До сих пор я читал их только как положительные числа. Я слышал, что вы также можете написать отрицательные шестнадцатеричные значения.

Моя проблема в том, что я не могу сказать, является ли значение отрицательным или положительным . Здесь и там я нашел несколько объяснений, но если я попытаюсь проверить их, используя онлайн-преобразователи из шестнадцатеричных в десятичные, они всегда дают мне разные результаты.

Источники, которые я нашел:
https://stackoverflow.com/a/5827491/5016201
https://coderanch.com/t / 246080 / java-programmer-OCPJP / сертификация / отрицательное шестнадцатеричное число

Если я правильно понимаю, это означает, что:
Если шестнадцатеричное значение, записанное со всеми его битами, имеет значение> 7 в качестве первой шестнадцатеричной цифры, оно отрицательно.
Все 'F' в начале или первая цифра означает, что значение отрицательное, оно не рассчитывается.

Например, если шестнадцатеричное значение записано в 32 битах:
FFFFF63C => отрицательный (-2500?)
844fc0bb => отрицательный ( -196099909?)
F44fc0bb => отрицательно (-196099909?)
FFFFFFFF => отрицательно (-1?)
7FFFFFFF => положительно

Я прав? Если нет, не могли бы вы сказать мне, что я не понимаю?

8
задан Vineeth 26 September 2018 в 03:45
поделиться