Programiranje sklopova često je ključno polazište kada računarski programeri uče svoj zanat. Asemblerski jezik (poznat i kao ASM) je programski jezik za računare i druge uređaje i općenito se smatra varijantom niskog nivoa u poređenju sa naprednijim jezicima koji nude dodatne funkcije. Nakon što ste napisali kôd, asembler ga pretvara u mašinski 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 sa skupštinskim jezikom
Korak 1. Pročitajte o asemblerskom jeziku
Prije nego što krenete u bilo kakav 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, otklanjanja grešaka i kompajliranja. 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 da li vam asembleri odgovaraju
Upamtite da postoji niz programskih jezika, uključujući i neke koji pružaju daleko više funkcija od sastavljanja. Međutim, još uvijek postoji niz aplikacija za koje je montaža korisna-od stvaranja samostalnih izvršnih datoteka za telefonski firmver i upravljačke sisteme za klimatizaciju do razvoja određenih uputa za procesor.
Korak 4. Odredite koji asembler želite koristiti
Asembleri 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 instrukcije raditi pod pretpostavkom da koristite MASM (Microsoft Macro Assembler)-osnovni asembler koji radi s Windows operativnim sistemima. 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 (sveobuhvatni IDE koji uključuje brojne alate), ali osnovniju originalnu verziju (MASM 8.0). MASM 8.0 je besplatan za preuzimanje. Imajte na umu da se neki asembleri, poput Flat Assemblera, mogu koristiti na više operativnih sistema, uključujući Windows, DOS i Linux. Ostali asembleri, uključujući Netwide Assembler (NASM) ili GNU Assembler (GAS)-radit će s Mac operativnim sistemima.
- Za preuzimanje MASM 8.0, jednostavno kliknite na dugme Preuzmi pri vrhu stranice na koju se upućuje u ovom koraku.
- Sistemski zahtjevi će se razlikovati ovisno o asembleru koji odaberete, ali MASM 8.0 zahtijeva Windows 2000 servisni paket 3, Windows Server 2003 ili Windows XP servisni paket 2.
- Instaliranje 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" da 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 popularna 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 što kliknete 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 WinAsma, jednostavno izdvojite datoteke i kopirajte ih u mapu "c: / programske datoteke \". Možda ćete također željeti postaviti prečicu na radnu površinu radi lakšeg pristupa.
Korak 5. Konfigurirajte svoj IDE
Prvo pokrenite program WinAsm. Ako ste prečicu stavili na radnu površinu, jednostavno dvaput kliknite na nju. Imajte na umu da će se ovaj postupak razlikovati ako koristite drugi asembler ili IDE.
Korak 6. Integrirajte WinAsm sa MASM 8.0
Počnite tako što ćete kliknuti na karticu WinAsm Alati, izabrati Opcije sa navedene kartice i na kraju izabrati karticu Datoteke i putanje. Zatim promijenite prve tri stavke (referentne staze) u svoju instalacijsku mapu MASM. Kada završite, kliknite OK.
Nakon prilagođavanja informacija na kartici Datoteke i putanje, prve tri stavke trebale bi glasiti kako slijedi. Binarna putanja bi trebala biti C: / Masm32 / Bin; put uključivanja treba biti C: / Masm32 / Include; a staza biblioteke treba biti C: / Masm32 / Bin
3. dio 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 opcija. Te opcije uključuju Console Application i Standard EXE. Na primjer, ako pokušavate stvoriti aplikaciju temeljenu na grafičkom korisničkom sučelju (grafičko korisničko sučelje), odabrali biste drugu.
Korak 2. Koristite strukturu programa za montažu
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) i makroi (oni služe kao tekst- mehanizam zamjene).
Savjeti
- Pisanje efikasnog koda na asemblerskom jeziku (ili bilo kojem drugom) općenito zahtijeva donekle značajnu studiju. Posebno ćete htjeti naučiti potrebnu sintaksu za izraze na asemblerskom jeziku i kako sastaviti i povezati program za sklapanje.
- 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 vas zanima IDE koji radi s novijim verzijama MASM -a, pogledajte Visual MASM na www.visualmasm.com/.