XStormy16-Opcodes.html 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- This file documents the GNU Assembler "as".
  4. Copyright (C) 1991-2017 Free Software Foundation, Inc.
  5. Permission is granted to copy, distribute and/or modify this document
  6. under the terms of the GNU Free Documentation License, Version 1.3
  7. or any later version published by the Free Software Foundation;
  8. with no Invariant Sections, with no Front-Cover Texts, and with no
  9. Back-Cover Texts. A copy of the license is included in the
  10. section entitled "GNU Free Documentation License".
  11. -->
  12. <!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
  13. <head>
  14. <title>Using as: XStormy16 Opcodes</title>
  15. <meta name="description" content="Using as: XStormy16 Opcodes">
  16. <meta name="keywords" content="Using as: XStormy16 Opcodes">
  17. <meta name="resource-type" content="document">
  18. <meta name="distribution" content="global">
  19. <meta name="Generator" content="makeinfo">
  20. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  21. <link href="index.html#Top" rel="start" title="Top">
  22. <link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
  23. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  24. <link href="XSTORMY16_002dDependent.html#XSTORMY16_002dDependent" rel="up" title="XSTORMY16-Dependent">
  25. <link href="Xtensa_002dDependent.html#Xtensa_002dDependent" rel="next" title="Xtensa-Dependent">
  26. <link href="XStormy16-Directives.html#XStormy16-Directives" rel="prev" title="XStormy16 Directives">
  27. <style type="text/css">
  28. <!--
  29. a.summary-letter {text-decoration: none}
  30. blockquote.smallquotation {font-size: smaller}
  31. div.display {margin-left: 3.2em}
  32. div.example {margin-left: 3.2em}
  33. div.indentedblock {margin-left: 3.2em}
  34. div.lisp {margin-left: 3.2em}
  35. div.smalldisplay {margin-left: 3.2em}
  36. div.smallexample {margin-left: 3.2em}
  37. div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
  38. div.smalllisp {margin-left: 3.2em}
  39. kbd {font-style:oblique}
  40. pre.display {font-family: inherit}
  41. pre.format {font-family: inherit}
  42. pre.menu-comment {font-family: serif}
  43. pre.menu-preformatted {font-family: serif}
  44. pre.smalldisplay {font-family: inherit; font-size: smaller}
  45. pre.smallexample {font-size: smaller}
  46. pre.smallformat {font-family: inherit; font-size: smaller}
  47. pre.smalllisp {font-size: smaller}
  48. span.nocodebreak {white-space:nowrap}
  49. span.nolinebreak {white-space:nowrap}
  50. span.roman {font-family:serif; font-weight:normal}
  51. span.sansserif {font-family:sans-serif; font-weight:normal}
  52. ul.no-bullet {list-style: none}
  53. -->
  54. </style>
  55. </head>
  56. <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
  57. <a name="XStormy16-Opcodes"></a>
  58. <div class="header">
  59. <p>
  60. Previous: <a href="XStormy16-Directives.html#XStormy16-Directives" accesskey="p" rel="prev">XStormy16 Directives</a>, Up: <a href="XSTORMY16_002dDependent.html#XSTORMY16_002dDependent" accesskey="u" rel="up">XSTORMY16-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
  61. </div>
  62. <hr>
  63. <a name="XStormy16-Pseudo_002dOpcodes"></a>
  64. <h4 class="subsection">9.52.3 XStormy16 Pseudo-Opcodes</h4>
  65. <a name="index-XStormy16-pseudo_002dopcodes"></a>
  66. <a name="index-pseudo_002dopcodes-for-XStormy16"></a>
  67. <p><code>as</code> implements all the standard XStormy16 opcodes.
  68. </p>
  69. <p><code>as</code> also implements the following pseudo ops:
  70. </p>
  71. <dl compact="compact">
  72. <dd>
  73. <a name="index-_0040lo-pseudo_002dop_002c-XStormy16"></a>
  74. </dd>
  75. <dt><code>@lo()</code></dt>
  76. <dd><p>Computes the lower 16 bits of the given expression and stores it into
  77. the immediate operand field of the given instruction. For example:
  78. </p>
  79. <p>&lsquo;<samp>add r6, @lo(here - there)</samp>&rsquo;
  80. </p>
  81. <p>computes the difference between the address of labels &rsquo;here&rsquo; and
  82. &rsquo;there&rsquo;, takes the lower 16 bits of this difference and adds it to
  83. register 6.
  84. </p>
  85. <a name="index-_0040hi-pseudo_002dop_002c-XStormy16"></a>
  86. </dd>
  87. <dt><code>@hi()</code></dt>
  88. <dd><p>Computes the higher 16 bits of the given expression and stores it into
  89. the immediate operand field of the given instruction. For example:
  90. </p>
  91. <p>&lsquo;<samp>addc r7, @hi(here - there)</samp>&rsquo;
  92. </p>
  93. <p>computes the difference between the address of labels &rsquo;here&rsquo; and
  94. &rsquo;there&rsquo;, takes the upper 16 bits of this difference, shifts it down 16
  95. bits and then adds it, along with the carry bit, to the value in
  96. register 7.
  97. </p>
  98. </dd>
  99. </dl>
  100. </body>
  101. </html>