Virtual-Machine-Specification.html 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html401/loose.dtd">
  2. <html>
  3. <!-- Created on December 10, 2012 by texi2html 1.82
  4. texi2html was written by:
  5. Lionel Cons <[email protected]> (original author)
  6. Karl Berry <[email protected]>
  7. Olaf Bachmann <[email protected]>
  8. and many others.
  9. Maintained by: Many creative people.
  10. Send bugs and suggestions to <[email protected]>
  11. -->
  12. <head>
  13. <title>avram - a virtual machine code interpreter: 2. Virtual Machine Specification</title>
  14. <meta name="description" content="avram - a virtual machine code interpreter: 2. Virtual Machine Specification">
  15. <meta name="keywords" content="avram - a virtual machine code interpreter: 2. Virtual Machine Specification">
  16. <meta name="resource-type" content="document">
  17. <meta name="distribution" content="global">
  18. <meta name="Generator" content="texi2html 1.82">
  19. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  20. <style type="text/css">
  21. <!--
  22. a.summary-letter {text-decoration: none}
  23. blockquote.smallquotation {font-size: smaller}
  24. pre.display {font-family: serif}
  25. pre.format {font-family: serif}
  26. pre.menu-comment {font-family: serif}
  27. pre.menu-preformatted {font-family: serif}
  28. pre.smalldisplay {font-family: serif; font-size: smaller}
  29. pre.smallexample {font-size: smaller}
  30. pre.smallformat {font-family: serif; font-size: smaller}
  31. pre.smalllisp {font-size: smaller}
  32. span.roman {font-family:serif; font-weight:normal;}
  33. span.sansserif {font-family:sans-serif; font-weight:normal;}
  34. ul.toc {list-style: none}
  35. -->
  36. </style>
  37. </head>
  38. <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
  39. <a name="Virtual-Machine-Specification"></a>
  40. <table cellpadding="1" cellspacing="1" border="0">
  41. <tr><td valign="middle" align="left">[<a href="Bugs.html#Bugs" title="Previous section in reading order"> &lt; </a>]</td>
  42. <td valign="middle" align="left">[<a href="Raw-Material.html#Raw-Material" title="Next section in reading order"> &gt; </a>]</td>
  43. <td valign="middle" align="left"> &nbsp; </td>
  44. <td valign="middle" align="left">[<a href="User-Manual.html#User-Manual" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
  45. <td valign="middle" align="left">[<a href="avram.html#Top" title="Up section"> Up </a>]</td>
  46. <td valign="middle" align="left">[<a href="Library-Reference.html#Library-Reference" title="Next chapter"> &gt;&gt; </a>]</td>
  47. <td valign="middle" align="left"> &nbsp; </td>
  48. <td valign="middle" align="left"> &nbsp; </td>
  49. <td valign="middle" align="left"> &nbsp; </td>
  50. <td valign="middle" align="left"> &nbsp; </td>
  51. <td valign="middle" align="left">[<a href="avram.html#Top" title="Cover (top) of document">Top</a>]</td>
  52. <td valign="middle" align="left">[<a href="avram_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
  53. <td valign="middle" align="left">[<a href="Function-Index.html#Function-Index" title="Index">Index</a>]</td>
  54. <td valign="middle" align="left">[<a href="avram_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
  55. </tr></table>
  56. <hr size="1">
  57. <a name="Virtual-Machine-Specification-1"></a>
  58. <h1 class="chapter">2. Virtual Machine Specification</h1>
  59. <p>This chapter contains a description of the virtual machine implemented
  60. by <code>avram</code>, from the point of view of a person wishing to write a
  61. compiler that generates code for it. Before reading this chapter,
  62. readers should at least skim <a href="User-Manual.html#User-Manual">User Manual</a> in order to see the big
  63. picture. Topics covered in this chapter include data representations,
  64. virtual code semantics, and file formats. A toy programming language is
  65. introduced for illustrative purposes. The sections in this chapter might
  66. not make sense if read out of order the first time through.
  67. The last section, <a href="Virtual-Code-Semantics.html#Virtual-Code-Semantics">Virtual Code Semantics</a>, contains many equations
  68. that may be difficult to read in the info or html renderings. The
  69. printed version is recommended for anyone who really wants to comprehend
  70. this material.
  71. </p>
  72. <table class="menu" border="0" cellspacing="0">
  73. <tr><td align="left" valign="top"><a href="Raw-Material.html#Raw-Material">2.1 Raw Material</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  74. </td></tr>
  75. <tr><td align="left" valign="top"><a href="Concrete-Syntax.html#Concrete-Syntax">2.2 Concrete Syntax</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  76. </td></tr>
  77. <tr><td align="left" valign="top"><a href="File-Format.html#File-Format">2.3 File Format</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  78. </td></tr>
  79. <tr><td align="left" valign="top"><a href="Representation-of-Numeric-and-Textual-Data.html#Representation-of-Numeric-and-Textual-Data">2.4 Representation of Numeric and Textual Data</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  80. </td></tr>
  81. <tr><td align="left" valign="top"><a href="Filter-Mode-Interface.html#Filter-Mode-Interface">2.5 Filter Mode Interface</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  82. </td></tr>
  83. <tr><td align="left" valign="top"><a href="Parameter-Mode-Interface.html#Parameter-Mode-Interface">2.6 Parameter Mode Interface</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  84. </td></tr>
  85. <tr><td align="left" valign="top"><a href="Virtual-Code-Semantics.html#Virtual-Code-Semantics">2.7 Virtual Code Semantics</a></td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
  86. </td></tr>
  87. </table>
  88. <hr size="1">
  89. <table cellpadding="1" cellspacing="1" border="0">
  90. <tr><td valign="middle" align="left">[<a href="Bugs.html#Bugs" title="Previous section in reading order"> &lt; </a>]</td>
  91. <td valign="middle" align="left">[<a href="Raw-Material.html#Raw-Material" title="Next section in reading order"> &gt; </a>]</td>
  92. <td valign="middle" align="left"> &nbsp; </td>
  93. <td valign="middle" align="left">[<a href="User-Manual.html#User-Manual" title="Beginning of this chapter or previous chapter"> &lt;&lt; </a>]</td>
  94. <td valign="middle" align="left">[<a href="avram.html#Top" title="Up section"> Up </a>]</td>
  95. <td valign="middle" align="left">[<a href="Library-Reference.html#Library-Reference" title="Next chapter"> &gt;&gt; </a>]</td>
  96. <td valign="middle" align="left"> &nbsp; </td>
  97. <td valign="middle" align="left"> &nbsp; </td>
  98. <td valign="middle" align="left"> &nbsp; </td>
  99. <td valign="middle" align="left"> &nbsp; </td>
  100. <td valign="middle" align="left">[<a href="avram.html#Top" title="Cover (top) of document">Top</a>]</td>
  101. <td valign="middle" align="left">[<a href="avram_toc.html#SEC_Contents" title="Table of contents">Contents</a>]</td>
  102. <td valign="middle" align="left">[<a href="Function-Index.html#Function-Index" title="Index">Index</a>]</td>
  103. <td valign="middle" align="left">[<a href="avram_abt.html#SEC_About" title="About (help)"> ? </a>]</td>
  104. </tr></table>
  105. <p>
  106. <font size="-1">
  107. This document was generated on <i>December 10, 2012</i> using <a href="http://www.nongnu.org/texi2html/"><i>texi2html 1.82</i></a>.
  108. </font>
  109. <br>
  110. </p>
  111. </body>
  112. </html>