<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>.:: The Converted Virtual Machine Instruction Set ::.</title> </head> <body BGCOLOR="#DbDbDb" text="#000000" LINK="#0C0C0C" VLINK="#070707" ALINK="#007007"> <h1 align="center"> Array handling </h1><br><hr><p> <table border="0" align="center" width="80%"> <tr><td> <!--LEFT BLOCK--> <table border="0" bordercolor="#CDCDCD" align="left" cellspacing="3" cellpadding="5" cols="4"> <tr> <td> <a href="#array_len"><b>array_len</b></a></td><td> <a href="#bread_elem"><b>bread_elem</b></a></td><td> <a href="#bwrite_elem"><b>bwrite_elem</b></a></td><td> <a href="#ckarray_load_i4"><b>ckarray_load_i4</b></a></td></tr><tr><td> <a href="#ckarray_load_i8"><b>ckarray_load_i8</b></a></td><td> <a href="#ckarray_store_i8"><b>ckarray_store_i8</b></a></td><td> <a href="#dread_elem"><b>dread_elem</b></a></td><td> <a href="#dwrite_elem"><b>dwrite_elem</b></a></td></tr><tr><td> <a href="#fread_elem"><b>fread_elem</b></a></td><td> <a href="#fwrite_elem"><b>fwrite_elem</b></a></td><td> <a href="#get2d"><b>get2d</b></a></td><td> <a href="#iread_elem"><b>iread_elem</b></a></td></tr><tr><td> <a href="#iwrite_elem"><b>iwrite_elem</b></a></td><td> <a href="#lread_elem"><b>lread_elem</b></a></td><td> <a href="#lwrite_elem"><b>lwrite_elem</b></a></td><td> <a href="#pread_elem"><b>pread_elem</b></a></td></tr><tr><td> <a href="#pwrite_elem"><b>pwrite_elem</b></a></td><td> <a href="#set2d"><b>set2d</b></a></td><td> <a href="#sread_elem"><b>sread_elem</b></a></td><td> <a href="#swrite_elem"><b>swrite_elem</b></a></td></tr><tr><td> <a href="#ubread_elem"><b>ubread_elem</b></a></td><td> <a href="#usread_elem"><b>usread_elem</b></a></td><td> </td><td> </td></tr></table></td></tr></table><p><hr><p><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="array_len"> <font color="#FFFFFF" size="+5"> array_len</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Get the length of an array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>array_len</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{array_len}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>array_len</i> = 193 (0xC1)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array</i> => <i>..., length</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> from the stack as type <code>ptr</code>. Fetch the <i>length</i> of this array and push it onto the stack as type <code>native int</code>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bread_elem"> <font color="#FFFFFF" size="+5"> bread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>int8</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bread_elem</i> = 180 (0xB4)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the 8 bit value from position <i>index</i> in <i>array</i>, sign-extend it to <code>int32</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="bwrite_elem"> <font color="#FFFFFF" size="+5"> bwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>int8</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>bwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{bwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>bwrite_elem</i> = 186 (0xBA)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int32</code> respectively. The <i>value</i> is truncated to 8 bits and written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ckarray_load_i4"> <font color="#FFFFFF" size="+5"> ckarray_load_i4</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Check an array load with an <code>int32</code> index</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ckarray_load_i4</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ckarray_load_i4}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ckarray_load_i4</i> = 190 (0xBE)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., pointer, index</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Retrieve <i>array</i> and <i>index</i> from the stack (without popping them) as the types <code>ptr</code> and <code>int32</code> respectively. Throw a <code>System.IndexOutOfRangeException</code> if <i>index</i> is out of range. Otherwise set <i>pointer</i> to the address of the first element in the array.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction is used to assist in obtaining the address of an array element. The program will normally follow this instruction with an <i>imul</i> operation to adjust the index for the size of the elements, followed by <i>padd_i4</i> to compute the final element address. This instruction sequence can also be used in combination with <i>mread</i> to fetch odd-sized array elements by pointer.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ckarray_load_i8"> <font color="#FFFFFF" size="+5"> ckarray_load_i8</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Check an array load with an <code>int64</code> index</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ckarray_load_i8</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ckarray_load_i8}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ckarray_load_i8</i> = 191 (0xBF)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., pointer, index</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Retrieve <i>array</i> and <i>index</i> from the stack (without popping them) as the types <code>ptr</code> and <code>int64</code> respectively. Throw a <code>System.IndexOutOfRangeException</code> if <i>index</i> is out of range. Otherwise set <i>pointer</i> to the address of the first element in the array.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction is used to assist in obtaining the address of an array element. The program will normally follow this instruction with an <i>lmul</i> operation to adjust the index for the size of the elements, followed by <i>padd_i8</i> to compute the final element address. This instruction sequence can also be used in combination with <i>mread</i> to fetch odd-sized array elements by pointer.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ckarray_store_i8"> <font color="#FFFFFF" size="+5"> ckarray_store_i8</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Check an array store that uses an <code>int64</code> index</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ckarray_store_i8</i></td></tr><tr><td align="center" width="100"><i>N[1]</i></td></tr><tr><td align="center" width="100"><i>M[1]</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ckarray_store_i8}</i></td></tr><tr><td align="center" width="100"><i>N</i></td></tr><tr><td align="center" width="100"><i>M</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ckarray_store_i8</i> = 192 (0xC0)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>..., pointer, value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int64</code>, and <code>word[N]</code> respectively (where <code>word</code> is the type of a stack word). Throw a <code>System.IndexOutOfRangeException</code> if <i>index</i> is out of range. Otherwise set <i>pointer</i> to the address of the <i>index</i>'th element in the array. The size of each array element is <i>M</i> bytes. The <i>pointer</i> and <i>value</i> are pushed onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction is used to assist in storing an element to an array when the CIL index had the type I on a 64-bit platform. This instruction sequence is typically followed by a <i>*write</i> instruction to store <i>value</i> at <i>pointer</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="dread_elem"> <font color="#FFFFFF" size="+5"> dread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>float64</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>dread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{dread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>dread_elem</i> = 255, 16 (0xFF, 0x10)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the <code>float64</code> value from position <i>index</i> in <i>array</i>, extend it to <code>native float</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="dwrite_elem"> <font color="#FFFFFF" size="+5"> dwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>float64</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>dwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{dwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>dwrite_elem</i> = 255, 19 (0xFF, 0x13)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>native float</code> respectively. The <i>value</i> is truncated to <code>float64</code> and written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="fread_elem"> <font color="#FFFFFF" size="+5"> fread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>float32</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>fread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{fread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>fread_elem</i> = 255, 15 (0xFF, 0x0F)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the <code>float32</code> value from position <i>index</i> in <i>array</i>, extend it to <code>native float</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="fwrite_elem"> <font color="#FFFFFF" size="+5"> fwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>float32</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>fwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{fwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>fwrite_elem</i> = 255, 18 (0xFF, 0x12)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>native float</code> respectively. The <i>value</i> is truncated to <code>float32</code> and written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="get2d"> <font color="#FFFFFF" size="+5"> get2d</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Prepare for a two-dimensional array get operation</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>get2d</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{get2d}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>get2d</i> = 255, 20 (0xFF, 0x14)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index1, index2</i> => <i>..., address</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index1</i>, and <i>index2</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int32</code> respectively. The <i>address</i> of <i>array[index1, index2]</i> is pushed onto the stack as type <code>ptr</code>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction is normally followed by a <i>*read</i> instruction to read the contents of the array element.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index1</i> or <i>index2</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="iread_elem"> <font color="#FFFFFF" size="+5"> iread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>int32</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>iread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{iread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>iread_elem</i> = 184 (0xB8)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the <code>int32</code> value from position <i>index</i> and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction can also be used to read values of type <code>uint32</code> from an array.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="iwrite_elem"> <font color="#FFFFFF" size="+5"> iwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>int32</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>iwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{iwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>iwrite_elem</i> = 188 (0xBC)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int32</code> respectively. The <i>value</i> is written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="lread_elem"> <font color="#FFFFFF" size="+5"> lread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>int64</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>lread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{lread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>lread_elem</i> = 255, 14 (0xFF, 0x0E)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the <code>int64</code> value from position <i>index</i> in <i>array</i>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction can also be used to read values of type <code>uint64</code>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="lwrite_elem"> <font color="#FFFFFF" size="+5"> lwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>int64</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>lwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{lwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>lwrite_elem</i> = 255, 17 (0xFF, 0x11)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int64</code> respectively. The <i>value</i> is written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction can also be used to write values of type <code>uint64</code>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="pread_elem"> <font color="#FFFFFF" size="+5"> pread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>ptr</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>pread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{pread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>pread_elem</i> = 185 (0xB9)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the <code>ptr</code> value from position <i>index</i> and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>iread_elem</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of memory space on all platforms.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="pwrite_elem"> <font color="#FFFFFF" size="+5"> pwrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>ptr</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>pwrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{pwrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>pwrite_elem</i> = 189 (0xBD)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>ptr</code> respectively. The <i>value</i> is written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction must not be confused with <i>iwrite_elem</i>. Values of type <code>int32</code> and <code>ptr</code> do not necessarily occupy the same amount of memory space on all platforms.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="set2d"> <font color="#FFFFFF" size="+5"> set2d</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Prepare for a two-dimensional array set operation</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>prefix</i></td></tr><tr><td align="center" width="100"><i>set2d</i></td></tr><tr><td align="center" width="100"><i>N[4]</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{set2d}</i></td></tr><tr><td align="center" width="100"><i>N</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>set2d</i> = 255, 21 (0xFF, 0x15)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index1, index2, value</i> => <i>..., address, value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Remove <i>array</i>, <i>index1</i>, and <i>index2</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int32</code> respectively. The <i>address</i> of <i>array[index1, index2]</i> is pushed into the stack as type <code>ptr</code> just below <i>value</i>. The operand <i>N</i> indicates the number of stack words that are occupied by <i>value</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Notes </b></td><td border="0">This instruction is normally followed by a <i>*write</i> instruction to write the contents of the array element.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index1</i> or <i>index2</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="sread_elem"> <font color="#FFFFFF" size="+5"> sread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>int16</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>sread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{sread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>sread_elem</i> = 182 (0xB6)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the 16 bit value from position <i>index</i> in <i>array</i>, sign-extend it to <code>int32</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="swrite_elem"> <font color="#FFFFFF" size="+5"> swrite_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Write <code>int16</code> value to array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>swrite_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{swrite_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>swrite_elem</i> = 187 (0xBB)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index, value</i> => <i>...</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i>, <i>index</i>, and <i>value</i> from the stack as the types <code>ptr</code>, <code>int32</code>, and <code>int32</code> respectively. The <i>value</i> is truncated to 16 bits and written at position <i>index</i> in <i>array</i>.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="ubread_elem"> <font color="#FFFFFF" size="+5"> ubread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>uint8</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>ubread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{ubread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>ubread_elem</i> = 181 (0xB5)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the 8 bit value from position <i>index</i> in <i>array</i>, zero-extend it to <code>int32</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><table cellpadding="5" cellspacing="0" bordercolor="#000000" border=" 1" align="center" width="80%"> <tr bgcolor="#7F7F7F" border="2"><td border="0" width="30%"> <a name="usread_elem"> <font color="#FFFFFF" size="+5"> usread_elem</font></a></td><td align="right" border="0"> </td></tr><tr border="1"><td border="0"> · <b>Operation</b></td><td border="0">Read <code>uint16</code> value from array</td></tr><tr border="0"><td border="0"> · <b>Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>usread_elem</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Direct Format </b></td><td border="0"><table border="0" bordercolor="#AAAAAA" cellpadding="6" cellspacing="0"><tr><td><table border="1" cellpadding="6" cellspacing="0"><tr><td align="center" width="100"><i>{usread_elem}</i></td></tr></table></td></tr></table></td></tr><tr border="0"><td border="0"> · <b>Forms </b></td><td border="0"><i>usread_elem</i> = 183 (0xB7)<br></td></tr><tr border="0"><td border="0"> · <b>Stack</b></td><td border="0"><i>..., array, index</i> => <i>..., value</i></td></tr><tr border="0"><td border="0" valign="top"> · <b>Description </b></td><td border="0">Pop <i>array</i> and <i>index</i> from the stack as the types <code>ptr</code> and <code>int32</code> respectively. Load the 16 bit value from position <i>index</i> in <i>array</i>, zero-extend it to <code>int32</code>, and push it onto the stack.</td></tr><tr border="0"><td border="0" valign="top"> · <b>Exceptions </b></td><td border="0"><code>System.NullReferenceException</code> -- Raised if <i>array</i> is <code>null</code>.</font><br><code>System.IndexOutOfRangeException</code> -- Raised if <i>index</i> is not within the array's bounds.</font><br></td></tr></table><br><br><p align="center"> <font size="-2">Copyright © Southern Storm Software Pty Ltd 2002 <br> Licensed under GNU FDL </font></p></body></html>