<html lang="en">
<head>
<title>Set - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Pseudo-Ops.html#Pseudo-Ops" title="Pseudo Ops">
<link rel="prev" href="Section.html#Section" title="Section">
<link rel="next" href="Short.html#Short" title="Short">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".

Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled ``GNU Free Documentation License''.

-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Set"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Short.html#Short">Short</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Section.html#Section">Section</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Pseudo-Ops.html#Pseudo-Ops">Pseudo Ops</a>
<hr>
</div>

<h3 class="section">7.97 <code>.set </code><var>symbol</var><code>, </code><var>expression</var></h3>

<p><a name="index-g_t_0040code_007bset_007d-directive-445"></a><a name="index-symbol-value_002c-setting-446"></a>Set the value of <var>symbol</var> to <var>expression</var>.  This
changes <var>symbol</var>'s value and type to conform to
<var>expression</var>.  If <var>symbol</var> was flagged as external, it remains
flagged (see <a href="Symbol-Attributes.html#Symbol-Attributes">Symbol Attributes</a>).

   <p>You may <code>.set</code> a symbol many times in the same assembly.

   <p>If you <code>.set</code> a global symbol, the value stored in the object
file is the last value stored into it.

   <p>On Z80 <code>set</code> is a real instruction, use
&lsquo;<samp><var>symbol</var><span class="samp"> defl </span><var>expression</var></samp>&rsquo; instead.

   </body></html>

