public static String formatNumber(long number, int radix, SignednessFormatMode mode) {
		if (radix == 0) {
			byte[] bytes = new byte[8];
			bytes[0] = (byte) (number >> 56);
			bytes[1] = (byte) (number >> 48);
			bytes[2] = (byte) (number >> 40);
			bytes[3] = (byte) (number >> 32);
			bytes[4] = (byte) (number >> 24);
			bytes[5] = (byte) (number >> 16);
			bytes[6] = (byte) (number >> 8);
			bytes[7] = (byte) (number >> 0);
			return StringUtilities.toQuotedString(bytes);
		}

		IntegerRadixRenderer renderer = null;
		switch (mode) {
			case SIGNED:
				renderer = SIGNED_INTEGER_RENDERER;
				break;
			case UNSIGNED:
				renderer = UNSIGNED_INTEGER_RENDERER;
				break;
			case DEFAULT:
				renderer = DEFAULT_INTEGER_RENDERER;
				break;
		}
		return renderer.toString(number, radix);

	}
Provide renderings of <code>number</code> in different bases:
<ul>
<li><code>0</code> - renders <code>number</code> as an escaped character sequence</li>
<li><code>2</code> - renders <code>number</code> as a <code>base-2</code> integer</li>
<li><code>8</code> - renders <code>number</code> as a <code>base-8</code> integer</li>
<li><code>10</code> - renders <code>number</code> as a <code>base-10</code> integer</li>
<li><code>16</code> (default) - renders <code>number</code> as a <code>base-16</code>
integer</li>
</ul>
<table>
<tr>
<th>Number</th>
<th>Radix</th>
<th>DEFAULT Mode Alias</th>
<th style="text-align:center"><i>UNSIGNED</i> Mode Value</th>
<th><i>SIGNED</i> Mode Value</th>
</tr>
<tr>
<td>&nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>100</td>
<td>2</td>
<td><i>UNSIGNED</i></td>
<td>1100100b</td>
<td>1100100b</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>100</td>
<td>8</td>
<td><i>UNSIGNED</i></td>
<td>144o</td>
<td>144o</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>100</td>
<td>10</td>
<td><i>SIGNED</i></td>
<td>100</td>
<td>100</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>100</td>
<td>16</td>
<td><i>UNSIGNED</i></td>
<td>64h</td>
<td>64h</td>
</tr>
<tr>
<td>&nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-1</td>
<td>2</td>
<td><i>UNSIGNED</i></td>
<td>1111111111111111111111111111111111111111111111111111111111111111b</td>
<td>-1b</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-1</td>
<td>8</td>
<td><i>UNSIGNED</i></td>
<td>1777777777777777777777o</td>
<td>-1o</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-1</td>
<td>10</td>
<td><i>SIGNED</i></td>
<td>18446744073709551615</td>
<td>-1</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-1</td>
<td>16</td>
<td><i>UNSIGNED</i></td>
<td>ffffffffffffffffh</td>
<td>-1h</td>
</tr>
<tr>
<td>&nbsp;</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-100</td>
<td>2</td>
<td><i>UNSIGNED</i></td>
<td>1111111111111111111111111111111111111111111111111111111110011100b</td>
<td>-1100100b</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-100</td>
<td>8</td>
<td><i>UNSIGNED</i></td>
<td>1777777777777777777634o</td>
<td>-144o</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-100</td>
<td>10</td>
<td><i>SIGNED</i></td>
<td>18446744073709551516</td>
<td>-100</td>
</tr>
<tr style="text-align:right;font-family: monospace">
<td>-100</td>
<td>16</td>
<td><i>UNSIGNED</i></td>
<td>ffffffffffffff9ch</td>
<td>-64h</td>
</tr>
</table>

@param number The number to represent
@param radix The base in which <code>number</code> is represented
@param mode Specifies how the number is formatted with respect to its signed-ness
@return number string in the given base
Ghidra/Framework/Generic/src/main/java/ghidra/util/NumericUtilities.java