GNU Assembler
Stable release | 2.20 / October 19, 2009 |
---|---|
Platform | Cross-platform |
Website | http://www.gnu.org/software/binutils/ |
The GNU Assembler, commonly known as Gas, is the assembler used by the GNU Project. It is the default back-end of gcc. It is used to compile the GNU operating system and the Linux kernel, and various other software. It is a part of the GNU Binutils package.
Gas's executable is named after as, a Unix assembler. Gas is cross-platform, and both runs on and assembles for a number of different computer architectures. Released under the GNU General Public License, Gas is free software.
General syntax
The GNU Assembler has a general syntax that works for all of the supported architectures. The general syntax includes assembler directives and a method for commenting.
Assembler directives
The GNU Assembler uses assembler directives (also known as pseudo ops), which are keywords beginning with a period that behave similarly to preprocessor directives in the C programming language. While most of the available assembler directives are valid regardless of the target architecture, some directives are machine dependent.[1]
Comments
Gas uses the # symbol for a single-line comment.
For example:
pop %edx # this is a comment # as well as this movl %edx,%eax
Criticisms
One source of criticism is the fact that on the x86 and x86-64 architecture it uses the AT&T assembler syntax, rather than the Intel syntax used in many other assemblers; however, since version 2.10[2], support for the Intel syntax via the .intel_syntax
directive has been added.[3][4]
See also
References
- ↑ "The GNU Assembler - Assembler Directives". http://sources.redhat.com/binutils/docs-2.12/as.info/Pseudo-Ops.html#Pseudo%20Ops.
- ↑ "GNU Assembler News". http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/NEWS?rev=1.93&content-type=text/x-cvsweb-markup&cvsroot=src.
- ↑ "AT&T Syntax versus Intel Syntax". Using as, the GNU Assembler. http://www.redhat.com/docs/manuals/enterprise/RHEL-3-Manual/gnu-assembler/i386-syntax.html.
- ↑ Ram Narayan (2007-10-17). "Linux assemblers: A comparison of GAS and NASM". IBM DeveloperWorks. http://www.ibm.com/developerworks/linux/library/l-gas-nasm.html. Retrieved 2007-10-17.
External links
Search Wikibooks | The Wikibook X86 Assembly has a page on the topic of |
|
cs:GNU Assembler es:GNU Assembler fr:GNU Assembler ja:GNUアセンブラ tr:GNU Assembler
If you like SEOmastering Site, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...