Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

ARM_002dInstruction_002dSet.html 4.1KB

3 роки тому
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  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-2020 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 6.5, http://www.gnu.org/software/texinfo/ -->
  13. <head>
  14. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  15. <title>ARM-Instruction-Set (Using as)</title>
  16. <meta name="description" content="ARM-Instruction-Set (Using as)">
  17. <meta name="keywords" content="ARM-Instruction-Set (Using as)">
  18. <meta name="resource-type" content="document">
  19. <meta name="distribution" content="global">
  20. <meta name="Generator" content="makeinfo">
  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="ARM-Syntax.html#ARM-Syntax" rel="up" title="ARM Syntax">
  25. <link href="ARM_002dChars.html#ARM_002dChars" rel="next" title="ARM-Chars">
  26. <link href="ARM-Syntax.html#ARM-Syntax" rel="prev" title="ARM Syntax">
  27. <style type="text/css">
  28. <!--
  29. a.summary-letter {text-decoration: none}
  30. blockquote.indentedblock {margin-right: 0em}
  31. blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
  32. blockquote.smallquotation {font-size: smaller}
  33. div.display {margin-left: 3.2em}
  34. div.example {margin-left: 3.2em}
  35. div.lisp {margin-left: 3.2em}
  36. div.smalldisplay {margin-left: 3.2em}
  37. div.smallexample {margin-left: 3.2em}
  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.nolinebreak {white-space: nowrap}
  49. span.roman {font-family: initial; font-weight: normal}
  50. span.sansserif {font-family: sans-serif; font-weight: normal}
  51. ul.no-bullet {list-style: none}
  52. -->
  53. </style>
  54. </head>
  55. <body lang="en">
  56. <a name="ARM_002dInstruction_002dSet"></a>
  57. <div class="header">
  58. <p>
  59. Next: <a href="ARM_002dChars.html#ARM_002dChars" accesskey="n" rel="next">ARM-Chars</a>, Up: <a href="ARM-Syntax.html#ARM-Syntax" accesskey="u" rel="up">ARM Syntax</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>
  60. </div>
  61. <hr>
  62. <a name="Instruction-Set-Syntax"></a>
  63. <h4 class="subsubsection">9.4.2.1 Instruction Set Syntax</h4>
  64. <p>Two slightly different syntaxes are support for ARM and THUMB
  65. instructions. The default, <code>divided</code>, uses the old style where
  66. ARM and THUMB instructions had their own, separate syntaxes. The new,
  67. <code>unified</code> syntax, which can be selected via the <code>.syntax</code>
  68. directive, and has the following main features:
  69. </p>
  70. <ul>
  71. <li> Immediate operands do not require a <code>#</code> prefix.
  72. </li><li> The <code>IT</code> instruction may appear, and if it does it is validated
  73. against subsequent conditional affixes. In ARM mode it does not
  74. generate machine code, in THUMB mode it does.
  75. </li><li> For ARM instructions the conditional affixes always appear at the end
  76. of the instruction. For THUMB instructions conditional affixes can be
  77. used, but only inside the scope of an <code>IT</code> instruction.
  78. </li><li> All of the instructions new to the V6T2 architecture (and later) are
  79. available. (Only a few such instructions can be written in the
  80. <code>divided</code> syntax).
  81. </li><li> The <code>.N</code> and <code>.W</code> suffixes are recognized and honored.
  82. </li><li> All instructions set the flags if and only if they have an <code>s</code>
  83. affix.
  84. </li></ul>
  85. </body>
  86. </html>