DUzun's Web
Programare, proiecte personale, divertisment

DUzun it's ME
 
  
Întrebările de la examenul ASM din semestrul 3 la universitate
Info

Assembler (ASM) nu este atat de vestit în lumea programiştilor începători, pentru că este un limbaj de programare de nivel jos, însă e foarte bun pentru a înţelege mai bine cum "gândeşte" calculatorul. Cine cunoaşte cel puţin bazele ASM, înţelege mai bine şi orice alt limbaj de nivel înalt sau mediu.

Dacă în alte limbaje în dosul oricărei funcţii stă un set de instrucţiuni elementare pe care le generează compilatorul şi care sunt ascunse de la ochii programatorului, apoi in ASM fiecare instrucţiune elementară executată de către procesor trebuieşte scrisă explicit, ceea ce înseamnă că programatorul "ştie" tot ce se întâmplă când programul este rulat.

Avantajul limbajului este viteza de execuţie mare şi cantitatea de memorie consumată minimală. Însă dezavantajul vădit al limbajului este migălozitatea cu care trebuie scrisă orice porţiune de cod a programului şi respectiv timpul pe care îl cere scrierea codului ASM.

Chiar dacă cineva nu este specialist în ASM şi preferă alte limbaje precum C sau Pascal, totuşi de multe ori se poate întâlni cu situaţii când are nevoie ca o anumită funcţie să se execute cât mai rapid posibil (de regulă la prelucrarea cantităţilor mari de informaţie, fie grafică, fie fişiere mari, ş.a.). În aceste cazuri este foarte binevenit ASM, care poate fi integrat în mai toate limbajele de nivel înalt. Deci se poate scrie o porţiune de cod în ASM, iar apoi continua în limbajul de bază în care se scrie întreg programul.

Dacă doreşti să vezi un exemplu de folosire a limbajului ASM în codul Pascal, vezi aici! Acesta este un program cat se poate de ilustrativ, în care am încercat să cuprind aspectele principale ale folosirii ASM în Turbo Pascal.

Pentru doritorii de a învăța ASM, pe internet este o carte foarte vestită „The Art of Assembly Language”. Este cam voluminoasă, însă comprehensivă și cu multe exemple și exerciții. O puteți descărca în format PDF.

Link: Întreruperi de sistem

News

arr_d Limba / Language


 


arr_r Login

Flag Counter