<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU Assembler "as".

Copyright (C) 1991-2015 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".
 -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using as: Z8000-Dependent</title>

<meta name="description" content="Using as: Z8000-Dependent">
<meta name="keywords" content="Using as: Z8000-Dependent">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Machine-Dependencies.html#Machine-Dependencies" rel="up" title="Machine Dependencies">
<link href="Z8000-Options.html#Z8000-Options" rel="next" title="Z8000 Options">
<link href="Z80-Opcodes.html#Z80-Opcodes" rel="prev" title="Z80 Opcodes">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Z8000_002dDependent"></a>
<div class="header">
<p>
Previous: <a href="Z80_002dDependent.html#Z80_002dDependent" accesskey="p" rel="prev">Z80-Dependent</a>, Up: <a href="Machine-Dependencies.html#Machine-Dependencies" accesskey="u" rel="up">Machine Dependencies</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>
</div>
<hr>
<a name="Z8000-Dependent-Features"></a>
<h3 class="section">9.54 Z8000 Dependent Features</h3>

<a name="index-Z8000-support"></a>
<p>The Z8000 as supports both members of the Z8000 family: the
unsegmented Z8002, with 16 bit addresses, and the segmented Z8001 with
24 bit addresses.
</p>
<p>When the assembler is in unsegmented mode (specified with the
<code>unsegm</code> directive), an address takes up one word (16 bit)
sized register.  When the assembler is in segmented mode (specified with
the <code>segm</code> directive), a 24-bit address takes up a long (32 bit)
register.  See <a href="Z8000-Directives.html#Z8000-Directives">Assembler Directives for the Z8000</a>,
for a list of other Z8000 specific assembler directives.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="Z8000-Options.html#Z8000-Options" accesskey="1">Z8000 Options</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Command-line options for the Z8000
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Z8000-Syntax.html#Z8000-Syntax" accesskey="2">Z8000 Syntax</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Assembler syntax for the Z8000
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Z8000-Directives.html#Z8000-Directives" accesskey="3">Z8000 Directives</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Special directives for the Z8000
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="Z8000-Opcodes.html#Z8000-Opcodes" accesskey="4">Z8000 Opcodes</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Opcodes
</td></tr>
</table>




</body>
</html>
