The dfdl:binaryNumberRep property defines how binary numbers are
represented. For signed types, a value of "binary" means two's
complement. Other values for the property for signed types can be
"packed" (IBM 390 packed decimal) an "ibm4690Packed". So DFDL does not
support sign-magnitude or other ways of representing signed binary
numbers. Though, if a format is found where a different reresentation is
needed, we can always discuss adding it. We came across a format that
uses "offset binary", so there is a proposal to add that to Daffodil
(DAFFODIL-1889).

I think generally two's complement is a safe assumption if it's not
specified.

- Steve

On 1/23/19 6:34 AM, Costello, Roger L. wrote:
> Hello DFDL community,
> 
> The Windows EXE file format has several fields that contain signed integers. 
> 
> I remember from school days that there are several ways a binary string can 
> represent signed integers:
> 
> Sign & magnitude
> 2's complement
> 
> Which ways does DFDL support?
> 
> The EXE specification doesn't specify whether a signed integer will be in 
> sign & magnitude form or 2's complement form (or some other form). If not 
> specified, should I assume 2's complement?
> 
> /Roger
> 

Reply via email to