As (Unix)

as (lyhenne sanoista assembler) on Unix-käyttöjärjestelmän assembler-kääntäjän nimi.

Ohjelman ensimmäisen version Unixia varten teki Ken Thompson PDP-7:lle käyttöjärjestelmän kehityksen varhaisessa vaiheessa. Ensimmäinen versio oli hyvin minimalistinen, joka tuotti kiinteällä nimellä (a.out) ohjelman joka oli suoraan ajettavissa. Myöhempi PDP-11:n alustalle tehty versio noudatti DEC:in PAL-11R-kääntäjän syntaksia.

Unixia siirrettäessä Interdata 8/32 -tietokoneelle assembler-kääntäjä oli yksi asia, joka ei ollut siirrettävissä: muun muassa tavujärjestys ja liukulukumuoto poikkesivat PDP-11:ssä käytetystä ja kääntäjän piti toimia eri tavoin riippuen siitä, kummalla alustalla sitä ajettiin.

VAX-11:ssä toteutetun Berkeley Unixin (BSD) as:n pääasiallinen käyttötapaus oli kääntää C-kielen kääntäjän tuottamaa ohjelmakoodia, ja se sisälsi vain vähän myönnytyksiä ihmisten kirjoittaman koodin tuelle.

as käyttää niin sanottua AT&T-syntaksia, jota myös useat muut assembler-kääntäjät tukevat, mutta joka eroaa Intelin käyttämästä syntaksista.

Vaihtoehtoisia toteutuksia ovat muun muassa GNU-projektin GNU Assembler ja nasm. Merkittäviä eroja syntaksissa ovat muun muassa:

Lähteet

  1. 1 2 Ritchie, Dennis M.: The Development of the C Language bell-labs.com. Viitattu 24.7.2017.
  2. ↑ Dennis M. Ritchie: UNIX Assembler Reference Manual (PDF) tom-yam.or.jp. Viitattu 9.10.2019. (englanniksi) 
  3. ↑ S. C. Johnson & D. M. Ritchie: Portability of C Programs and the UNIX System bell-labs.com. 1978. Viitattu 6.9.2019. (englanniksi) 
  4. ↑ Berkeley VAX/UNIX Assembler Reference Manual (PDF) maibriz.de. Viitattu 9.10.2019. (englanniksi)
  5. ↑ Robert Dewar: AT&T x86 Asm Syntax cs.nyu.edu. Arkistoitu Viitattu 9.10.2019. (englanniksi)
  6. ↑ Red Hat Enterprise Linux 3: Using as, the Gnu Assembler web.mit.edu. Viitattu 9.10.2019. (englanniksi)
  7. 1 2 3 Ram Narayan: Linux assemblers: A comparison of GAS and NASM 17.10.2007. IBM. Viitattu 9.10.2019. (englanniksi)

Aiheesta muualla