IntegerToBinary (Float function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (match syntax diagram to template; fix tags and links)
Line 1: Line 1:
{{Template:Float:IntegerToBinary subtitle}}
{{Template:Float:IntegerToBinary subtitle}}


This [[Intrinsic classes|intrinsic]] function converts an integer to its binary string representation.
The <var>IntegerToBinary</var> <var>[[Intrinsic classes|intrinsic]]</var> function converts an integer to its binary string representation. Only integers that convert to a string no longer than four characters are allowed.
Only integers that convert to a string no longer than four characters are allowed.


The <var>IntegerToBinary</var> function is available as of version 7.3 of the <var class=product>Sirius Mods</var>.
==Syntax==
==Syntax==
{{Template:Float:IntegerToBinary syntax}}
{{Template:Float:IntegerToBinary syntax}}
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%str</th>
<tr><th>%string</th>
<td>A string variable to receive the converted value of the method object number. </td></tr>
<td>A string variable to receive the converted value of the method object <var class="term">float</var>.</td></tr>
<tr><th>float</th>
<td>An integer value. The number must be convertible to a binary string that does not exceed the length specified by the <var class="term">number</var> value. </td></tr>
<tr><th>number</th>
<tr><th>number</th>
<td>An integer value. The number must be convertible to a binary string that does not exceed the length specified by the ''num'' value. </td></tr>
<td>A non-zero numeric value that specifies the length of the binary string to be returned. Its value must be greater than 0 and less than 5.</td></tr>
<tr><th>num</th>
<tr><th>Signed</th>
<td>A non-zero numeric value that specifies the length of the binary string to be returned. Its value must be greater than 0 and less than 5. </td></tr>
<td>This is an optional, but <var class="term">nameRequired</var>, <var>[[boolean enumeration]]</var> that indicates whether the method object integer is to be converted to a signed integer. If so, the resulting binary string will begin with a sign bit, and a two's complement conversion is performed.
<tr><th>[Signed=]bool</th>
<p><var class="term">Signed</var> is an optional argument that defaults to <var class="term">False</var>, which produces an unsigned conversion.</td></tr>
<td>This name-required argument (''''Signed'''') is a boolean value that indicates whether the method object integer is to be converted to a signed integer. If so, the resulting binary string will begin with a sign bit, and a two's complement conversion is performed.
<p class="code">''''Signed'''' is an optional argument that defaults to ''''False'''', which produces an unsigned conversion.</td></tr>
</p>
</p>
</table>
</table>
==Usage notes==
==Usage notes==
*If the specified length of the returned binary string is greater than the binary value, the value is padded on the left with repetitions of the appropriate sign bit.
<ul><li>If the specified length of the returned binary string is greater than the binary value, the value is padded on the left with repetitions of the appropriate sign bit.
*If the specified length of the returned binary string is insufficient to contain the converted value and any necessary sign bit, the request is cancelled.
<li>If the specified length of the returned binary string is insufficient to contain the converted value and any necessary sign bit, the request is cancelled.
*The inverse of the <var>IntegerToBinary</var> method is [[BinaryToInteger (String function)|BinaryToInteger]].
<li><var>IntegerToBinary</var> is available as of <var class="product">[[Sirius Mods]]</var> Version 7.3.</ul>


==Examples==
==Examples==
The following statement displays an ''''a'''' character:
<ol><li>The following statement displays an '<code>a</code>' character:
<p class="code">[[Intrinsic classes#printtext|printText]] {129:integerToBinary(1)}
<p class="code">printText {129:integerToBinary(1)}
</p>
</p>
The following statement displays ''''??'''' because the resulting binary string is two non-displayable characters:
<li>The following statement displays '<code>??</code>' because the resulting binary string is two non-displayable characters:
<p class="code">printText {32769:integerToBinary(2)}
<p class="code">printText {32769:integerToBinary(2)}
</p>
</p>
To view the hex equivalents of the non-displayable characters above, you can use [[StringToHex (String function)|StringToHex]]. The following statement The displays ''''8001''''.
<li>To view the hex equivalents of the non-displayable characters in examples above, you can use <var>[[StringToHex (String function)|StringToHex]]</var>. The following statement The displays '<code>8001</code>'.
<p class="code">printText {32769:integerToBinary(2):stringToHex}
<p class="code">printText {32769:integerToBinary(2):stringToHex}
</p>
</p>
The following statement displays ''''FF7F'''':
<li>The following statement displays '<code>FF7F</code>':
<p class="code">printText {-129:integerToBinary(2, signed=true):stringToHex}
<p class="code">printText {-129:integerToBinary(2, signed=true):stringToHex}
</p>
</p>
The following statement displays ''''0081'''', a value padded with a positive sign bit:
<li>The following statement displays '<code>0081</code>, a value padded with a positive sign bit:
<p class="code">printText {129:integerToBinary(2, signed=true):stringToHex}
<p class="code">printText {129:integerToBinary(2, signed=true):stringToHex}
</p></ol>


</p>
==See also==
==See also==
<ul><li>The inverse of <var>IntegerToBinary</var> is <var>[[BinaryToInteger_(String_function)|BinaryToInteger]]</var>.
<li>For details of the <var>printtext</var> statement, please see <var>[[Intrinsic classes#printtext|printText]]</var>.</ul>
{{Template:Float:IntegerToBinary footer}}
{{Template:Float:IntegerToBinary footer}}

Revision as of 07:31, 3 February 2011

Convert an integer to a binary string (Float class)


The IntegerToBinary intrinsic function converts an integer to its binary string representation. Only integers that convert to a string no longer than four characters are allowed.

Syntax

%string = float:IntegerToBinary( number, [Signed= boolean])

Syntax terms

%string A string variable to receive the converted value of the method object float.
float An integer value. The number must be convertible to a binary string that does not exceed the length specified by the number value.
number A non-zero numeric value that specifies the length of the binary string to be returned. Its value must be greater than 0 and less than 5.
Signed This is an optional, but nameRequired, boolean enumeration that indicates whether the method object integer is to be converted to a signed integer. If so, the resulting binary string will begin with a sign bit, and a two's complement conversion is performed.

Signed is an optional argument that defaults to False, which produces an unsigned conversion.

Usage notes

  • If the specified length of the returned binary string is greater than the binary value, the value is padded on the left with repetitions of the appropriate sign bit.
  • If the specified length of the returned binary string is insufficient to contain the converted value and any necessary sign bit, the request is cancelled.
  • IntegerToBinary is available as of Sirius Mods Version 7.3.

Examples

  1. The following statement displays an 'a' character:

    printText {129:integerToBinary(1)}

  2. The following statement displays '??' because the resulting binary string is two non-displayable characters:

    printText {32769:integerToBinary(2)}

  3. To view the hex equivalents of the non-displayable characters in examples above, you can use StringToHex. The following statement The displays '8001'.

    printText {32769:integerToBinary(2):stringToHex}

  4. The following statement displays 'FF7F':

    printText {-129:integerToBinary(2, signed=true):stringToHex}

  5. The following statement displays '0081, a value padded with a positive sign bit:

    printText {129:integerToBinary(2, signed=true):stringToHex}

See also