Programiranje sklopova često je ključno polazište kada računalni programeri uče svoj zanat. Asemblerski jezik (također poznat i kao ASM) je programski jezik za računala i druge uređaje i općenito se smatra varijantom niske razine u usporedbi s naprednijim jezicima koji nude dodatne funkcije. Nakon što ste napisali kôd, asembler ga pretvara u strojni kod (1s i 0s). Iako su aplikacije za programiranje sklopova postale sve ograničenije s obzirom na sve veću složenost procesora, Assembly ostaje koristan u brojne svrhe, uključujući pisanje koda za samostalne izvršne datoteke ili upravljačke programe uređaja.
Koraci
1. dio od 3: Upoznajte se s asemblerskim jezikom
Korak 1. Pročitajte o asemblerskom jeziku
Prije nego što krenete u pokušaj pisanja koda, uvijek je dobro prvo razumjeti sam jezik. Postoji niz dostupnih izvora, od udžbenika do mrežnih vodiča.
Korak 2. Naučite osnovne pojmove
Na primjer, želite znati da IDE (integrirano razvojno okruženje) pruža sučelje za kodiranje koje se bavi stvarima poput uređivanja teksta, ispravljanja pogrešaka i sastavljanja. Možda ćete također htjeti bolje razumjeti način na koji sklop zapravo funkcionira, poput činjenice da su "registri" oni koji pohranjuju brojeve povezane s programskim kodom. Bolje razumijevanje terminologije olakšat će učenje samog procesa pisanja koda.
Korak 3. Odlučite odgovaraju li vam asembleri
Upamtite da postoji niz programskih jezika, uključujući i neke koji pružaju daleko više funkcionalnosti od sastavljanja. Međutim, još uvijek postoji niz aplikacija za koje je montaža korisna-od stvaranja samostalnih izvršnih datoteka za programski softver telefona i upravljačkih sustava klima uređaja do razvoja određenih uputa za procesor.
Korak 4. Odredite koji asembler želite koristiti
Sastavljači poput A86, NASM ili GNU općenito obavljaju manje složene funkcije i mogu biti prikladna polazišta za početnike. Svaki asembler radi malo drugačije, pa će sljedeće upute raditi pod pretpostavkom da koristite MASM (Microsoft Macro Assembler)-osnovni asembler koji radi s Windows operativnim sustavima. Koristi x86 montažni jezik i Intelovu sintaksu.
Dio 2 od 3: Preuzimanje i instaliranje asemblera i IDE -a
Korak 1. Preuzmite sam asembler
Najnoviju verziju MASM -a možete pronaći u Visual Studio Enterprise 2015 (opsežan IDE uključujući niz alata), ali osnovniju izvornu verziju (MASM 8.0). MASM 8.0 možete besplatno preuzeti. Imajte na umu da se neki asembleri, poput Flat Assemblera, mogu koristiti na više operativnih sustava, uključujući Windows, DOS i Linux. Ostali asembleri, uključujući Netwide Assembler (NASM) ili GNU Assembler (GAS)-radit će s Mac operativnim sustavima.
- Za preuzimanje MASM 8.0, jednostavno kliknite gumb Preuzmi pri vrhu stranice na koju se upućuje u ovom koraku.
- Sistemski zahtjevi razlikovat će se ovisno o asembleru koji odaberete, ali MASM 8.0 zahtijeva Windows 2000 servisni paket 3, Windows Server 2003 ili Windows XP servisni paket 2.
- Instalacija MASM 8.0 također će zahtijevati da ste prethodno preuzeli i instalirali Visual C ++ 2005 Express Edition.
Korak 2. Preuzmite IDE
Jednostavno pretražite "WinAsm download" kako biste pronašli i instalirali WinAsm IDE, koji općenito dobro funkcionira s MASM -om. Drugi IDE -i mogu biti prikladniji, ovisno o tome koji programski jezik koristite. Jedna od popularnih alternativa je RadAsm.
Korak 3. Instalirajte MASM 8.0
Instalaciju možete započeti odmah klikom na Pokreni nakon preuzimanja programa. Alternativno, možda ćete ga htjeti instalirati kasnije, u tom slučaju jednostavno kliknite Spremi. Nakon klika na Pokreni, MASM 8.0 će biti instaliran u vaš "[Visual C ++ Express] bin" direktorij i označen je ml.exe.
Korak 4. Instalirajte svoj IDE
Nakon preuzimanja programa WinAsm jednostavno izdvojite datoteke i kopirajte ih u mapu "c: / programske datoteke \". Možda ćete također željeti postaviti prečac na radnu površinu radi lakšeg pristupa.
Korak 5. Konfigurirajte svoj IDE
Prvo pokrenite program WinAsm. Ako ste stavili prečac na radnu površinu, jednostavno ga dvaput kliknite. Imajte na umu da će se ovaj postupak razlikovati ako koristite drugi asembler ili IDE.
Korak 6. Integrirajte WinAsm s MASM 8.0
Počnite tako što ćete kliknuti na karticu WinAsm Alati, izabrati Opcije s navedene kartice i na kraju odabrati karticu Datoteke i putanje. Zatim promijenite prva tri unosa (referentne staze) u svoju instalacijsku mapu MASM. Kada završite, kliknite U redu.
Nakon prilagodbe podataka na kartici Datoteke i putanje, prve tri stavke trebale bi glasiti kako slijedi. Binarni put trebao bi biti C: / Masm32 / Bin; put uključivanja trebao bi biti C: / Masm32 / Include; a put knjižnice trebao bi biti C: / Masm32 / Bin
Dio 3 od 3: Pisanje koda
Korak 1. Počnite pisati kôd
Počnite pokretanjem programa WinAsm i klikom na karticu Datoteka. Zatim odaberite Novi projekti i vidjet ćete nekoliko mogućnosti. Te opcije uključuju Console Application i Standard EXE. Na primjer, ako pokušavate stvoriti aplikaciju temeljenu na grafičkom sučelju (grafičko korisničko sučelje), odabrali biste potonju.
Korak 2. Koristite strukturu programa montaže
Tipična struktura može uključivati liniju koja definira arhitekturu, odjeljak podataka (section.data) uključujući inicijalizirane podatke ili konstante, bss odjeljak (section.bss) koji deklarira varijable i tekstualni odjeljak (section.text) u koji postavljate svoj stvarni programski kod. Taj posljednji odjeljak uvijek počinje globalnom _start deklaracijom. Svaki niz je poznat kao blok koda.
Korak 3. Shvatite osnovne naredbe
U asemblerskom jeziku postoje tri vrste naredbi: izvršne upute ili upute (one govore procesorima što trebaju učiniti putem operacijskog koda), asemblerske direktive ili pseudo-ops (one opisuju asemblerske procese asemblerskim procesima) i makronaredbe (one služe kao tekst- mehanizam zamjene).
Savjeti
- Pisanje učinkovitog koda na asemblerskom jeziku (ili bilo kojem drugom) općenito zahtijeva donekle značajno proučavanje. Posebno ćete htjeti naučiti potrebnu sintaksu za izraze na asemblerskom jeziku te kako sastaviti i povezati program za montažu.
- Ako naiđete na poteškoće pri pokušaju postavljanja određenog asemblera, bilo bi pametno pridružiti se forumu na kojem se mogu rješavati određena pitanja.
- Neki programski jezici imaju mogućnosti za miješanje sklopova u njih, kao što je funkcija ASM ("") u C i C ++. Ovo je dobar način za početak.
- Ako ste zainteresirani za IDE koji radi s novijim verzijama MASM -a, pogledajte Visual MASM na www.visualmasm.com/.