Public Sub testbinary
Log(FormatterBinary(Number2GrayCode(31), 8))
Log(FormatterBinary(Number2BinaryCode(31), 8))
Log(FormatterBinary(Number2GrayCode(31), 16))
Log(FormatterBinary(Number2BinaryCode(31), 16))
End Sub
Public Sub Number2GrayCode(a As Int) As String
Dim b As Int = Bit.Xor(Bit.Shiftright(a,1),a)
Return Bit.ToBinaryString(b)
End Sub
Public Sub Number2BinaryCode(a As Int) As String
Return Bit.ToBinaryString(a)
End Sub
Public Sub FormatterBinary (Value As String, Size As Int) As String
Dim formatter As B4XFormatter
formatter.Initialize
formatter.GetDefaultFormat.GroupingCharacter = ""
formatter.GetDefaultFormat.DecimalPoint = ""
formatter.GetDefaultFormat.IntegerPaddingChar = "0"
formatter.GetDefaultFormat.MinimumIntegers = Size
Return formatter.Format(Value)
End Sub