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 5Copyright (C) 1991-2021 Free Software Foundation, Inc. 6 7Permission is granted to copy, distribute and/or modify this document 8under the terms of the GNU Free Documentation License, Version 1.3 9or any later version published by the Free Software Foundation; 10with no Invariant Sections, with no Front-Cover Texts, and with no 11Back-Cover Texts. A copy of the license is included in the 12section entitled "GNU Free Documentation License". 13 --> 14<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ --> 15<head> 16<title>Using as: bss</title> 17 18<meta name="description" content="Using as: bss"> 19<meta name="keywords" content="Using as: bss"> 20<meta name="resource-type" content="document"> 21<meta name="distribution" content="global"> 22<meta name="Generator" content="makeinfo"> 23<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 24<link href="index.html#Top" rel="start" title="Top"> 25<link href="AS-Index.html#AS-Index" rel="index" title="AS Index"> 26<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents"> 27<link href="Sections.html#Sections" rel="up" title="Sections"> 28<link href="Symbols.html#Symbols" rel="next" title="Symbols"> 29<link href="Sub_002dSections.html#Sub_002dSections" rel="previous" title="Sub-Sections"> 30<style type="text/css"> 31<!-- 32a.summary-letter {text-decoration: none} 33blockquote.smallquotation {font-size: smaller} 34div.display {margin-left: 3.2em} 35div.example {margin-left: 3.2em} 36div.indentedblock {margin-left: 3.2em} 37div.lisp {margin-left: 3.2em} 38div.smalldisplay {margin-left: 3.2em} 39div.smallexample {margin-left: 3.2em} 40div.smallindentedblock {margin-left: 3.2em; font-size: smaller} 41div.smalllisp {margin-left: 3.2em} 42kbd {font-style:oblique} 43pre.display {font-family: inherit} 44pre.format {font-family: inherit} 45pre.menu-comment {font-family: serif} 46pre.menu-preformatted {font-family: serif} 47pre.smalldisplay {font-family: inherit; font-size: smaller} 48pre.smallexample {font-size: smaller} 49pre.smallformat {font-family: inherit; font-size: smaller} 50pre.smalllisp {font-size: smaller} 51span.nocodebreak {white-space:nowrap} 52span.nolinebreak {white-space:nowrap} 53span.roman {font-family:serif; font-weight:normal} 54span.sansserif {font-family:sans-serif; font-weight:normal} 55ul.no-bullet {list-style: none} 56--> 57</style> 58 59 60</head> 61 62<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000"> 63<a name="bss"></a> 64<div class="header"> 65<p> 66Previous: <a href="Sub_002dSections.html#Sub_002dSections" accesskey="p" rel="previous">Sub-Sections</a>, Up: <a href="Sections.html#Sections" accesskey="u" rel="up">Sections</a> [<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> 67</div> 68<hr> 69<a name="bss-Section"></a> 70<h3 class="section">4.5 bss Section</h3> 71 72<a name="index-bss-section-1"></a> 73<a name="index-common-variable-storage"></a> 74<p>The bss section is used for local common variable storage. 75You may allocate address space in the bss section, but you may 76not dictate data to load into it before your program executes. When 77your program starts running, all the contents of the bss 78section are zeroed bytes. 79</p> 80<p>The <code>.lcomm</code> pseudo-op defines a symbol in the bss section; see 81<a href="Lcomm.html#Lcomm"><code>.lcomm</code></a>. 82</p> 83<p>The <code>.comm</code> pseudo-op may be used to declare a common symbol, which is 84another form of uninitialized symbol; see <a href="Comm.html#Comm"><code>.comm</code></a>. 85</p> 86<p>When assembling for a target which supports multiple sections, such as ELF or 87COFF, you may switch into the <code>.bss</code> section and define symbols as usual; 88see <a href="Section.html#Section"><code>.section</code></a>. You may only assemble zero values into the 89section. Typically the section will only contain symbol definitions and 90<code>.skip</code> directives (see <a href="Skip.html#Skip"><code>.skip</code></a>). 91</p> 92 93 94 95</body> 96</html> 97