Ero sivun ”As (Unix)” versioiden välillä

[katsottu versio][katsottu versio]
Poistettu sisältö Lisätty sisältö
Ipr1 (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
Ipr1 (keskustelu | muokkaukset)
Ei muokkausyhteenvetoa
Rivi 10:
as käyttää niin sanottua [[AT&T]]-syntaksia, jota myös useat muut assembler-kääntäjät tukevat, mutta joka eroaa [[Intel]]in käyttämästä syntaksista.<ref>{{Verkkoviite | osoite = https://cs.nyu.edu/courses/fall03/V22.0201-003/c_att_syntax.html | nimeke = AT&T x86 Asm Syntax | tekijä = Robert Dewar | viitattu = 9.10.2019 | kieli = {{en}} }}</ref><ref>{{Verkkoviite | osoite = http://web.mit.edu/rhel-doc/3/rhel-as-en-3/i386-syntax.html | nimeke = Red Hat Enterprise Linux 3: Using as, the Gnu Assembler | viitattu = 9.10.2019 | kieli = {{en}} }}</ref><ref name="ibmgasnasm">{{Verkkoviite | osoite = https://developer.ibm.com/articles/l-gas-nasm/ | nimeke = Linux assemblers: A comparison of GAS and NASM | julkaisija = IBM | tekijä = Ram Narayan | ajankohta = 17.10.2007 | viitattu = 9.10.2019 | kieli = {{en}} }}</ref>
 
Vaihtoehtoisia toteutuksia ovat muun muassa [[GNU]]-projektin [[GNU Assembler]] ja [[nasm]].<ref name="ibmgasnasm" /> Merkittäviä eroja syntaksissa ovat muun muassa:<ref name="ibmgasnasm" />
* lähde- ja kohdeoperandin järjestys
* välittömät arvo-operandit: <code>$</code>-merkin käyttö AT&T-syntaksissa
* rekisterioperandien etumerkki: <code>%</code>-merkin käyttö AT&T-syntaksissa
* operaation muuttujan koko: <code>b</code>, <code>w</code> ja <code>l</code> -liitteiden käyttö operaatiokoodin perässä (esim. <code>movl</code>) vastakohtana operandin edeltäjänä (esim. <code>byte ptr foo</code>)
* välittömien [[hyppykäsky]]jen muoto: <code>$section, $offset</code> vastakohtana <code>section:offset</code> -muodolle
 
== Lähteet ==