? Når du nærmer deg et utviklingsprosjekt , programmerere gjør valg om hvilke språk, teknologier og plattformer for å bruke. Dette kan omfatte både høy og lav nivå programmeringsspråk . Ved hjelp av assembly , et lavt nivå språk , gir programmerere muligheten til å forbedre sine utvikling ferdigheter generelt. Effektivitet
Ved å bruke assembly , kan programmerere maksimere på farten til et nivå som er vanligvis ikke tillatt med høynivå-språk . I tilfeller hvor søknader har betydelige krav til ytelse , er dette en ønskelig evne. Grunnen lavt nivå språk tillate denne økte mengden av kontroll er at koden uttalelser utøve en mer direkte innvirkning på datamaskinens maskinvare elementer . Dessuten kan visse algoritmer programmeres bare i assembly .
Forstå Computing Technology
Alle som arbeider innen databehandling vitenskap i enhver sammenheng kan lære om databehandling prosesser ved hjelp av assembly , fylle noen av de potensielle konseptuelle blanks mellom maskinvare og programvare. I motsetning til høyt nivå programmering, der en betydelig grad av abstraksjon eksisterer mellom programutvikling og gjennomføring i maskinvare, montering programmene er nærmere konseptuelt og fysisk til det underliggende behandling. For eksempel kan assemblyprogrammering innebære direkte kontroll over prosessorer og minne , som programmering detaljene for å lagre en variabel verdi for senere bruk .
Innvirkning på High Level Programmering
programmerere som jobber med høynivå-språk kan lære visse aspekter av beste praksis ved å bruke assembly . Høyt nivå programmeringsspråk som Java kan oppmuntre programmereren ikke å vurdere hardware implementering i det hele tatt , så det er mulig å lære og bruke slike språk uten å ha noen reell idé om hva som skjer på lavere nivå. Å få denne type forståelse gjennom lavt nivå programmering gir høyt nivå programmerere økte evner til å maksimere ytelsen.
Hardware Tilgang
Assembly language gir tilgang til visse ressurser og hardware kontroller som er rett og slett ikke er tilgjengelig via høyere nivå språk. Evnen til å målrette spesielle trekkene ved den arkitekturen innenfor en bestemt regnemaskin er et eksempel på dette . Muligheten til direkte kontroll input og output komponenter i en datamaskin er et annet eksempel .