Мне нужно определить SmallInt
константу с шестнадцатеричным значением. В некотором роде так:
const
a: SmallInt = $8000;
Конечно, значение $8000
нарушает границы поддиапазона SmallInt
. Я знаю это и делаю это сознательно. На самом деле мне нужен побитовый перевод этого литерала в 16-разрядное целое число со знаком.
Если бы это была переменная, я мог бы использовать ключевое слово absolute
:
var
a_prototype: Word;
a: SmallInt absolute a_prototype;
begin
a_prototype := $8000;
, но это должно быть константой.