Programa (informàtica)
Aquesta entrada o secció sobre programació no cita les fonts necessàries o els presents són insuficients . |
Un programa, en informàtica , és un procés algorítmic aplicat a un problema donat per automatització , normalment codificat en una sèrie de línies de codi escrites en un llenguatge de programació per un programador durant la programació per formar un programari , que pot ser executat per un processador , rebre com a entrada determinades dades i retornar la sortida en els eventuals resultats obtinguts després de l'execució / processament de les seves instruccions .
Descripció

Un programa és un conjunt de línies de codi que formen un conjunt d'instruccions. El problema s’ha de resoldre mitjançant un algorisme perquè un programador pugui codificar-lo en instruccions en un llenguatge de programació ; en aquesta fase, anomenada programació , es crea el codi font del programa que defineix el seu flux d'execució .
El terme indica una seqüència ordenada lògicament d’ordres, instruccions i operacions i es diferencia del terme més genèric de programari, ja que un programa és un programari que es pot carregar a la memòria RAM per executar-lo com a procés , incloent també aquells programes que s’executen a el fons , com en un sistema operatiu en execució, com per exemple. biblioteques . De la mateixa manera, es diferencia del terme " aplicació " que s'utilitza normalment des de la perspectiva de l'usuari final per significar un servei que aquest pot utilitzar, independentment de si està implementat per un sol programa o per un conjunt de programes - i a de fet, els programes que operen en sistemes incrustats no són, per tant, aplicacions per a l'usuari, però permeten la funcionalitat del dispositiu. En aquest cas, l'aplicació consta d'una interfície d'usuari i una unitat de processament. [ no està clar ] L'expressió " sistema de programari " s'utilitza, per regla general, per indicar explícitament una col·lecció de components de programari, com ara programes, biblioteques, fitxers i molt més, que interactuen entre si.
Escriure
Per escriure un programa s’ha de respectar la sintaxi i la semàntica del llenguatge de programació concret triat. A continuació, es detecten i s’informen dels errors d’escriptura durant la compilació o la interpretació. El requisit previ bàsic per a la correcta escriptura i funcionalitat del programa, d'acord amb les especificacions desitjades, és també el processament correcte aigües amunt de l'algoritme per resoldre el problema a automatitzar.
Recopilació / interpretació i enllaç

L'execució del codi, un cop precompilat , compilat i / o interpretat, té lloc de manera seqüencial en compliment de seleccions / comprovacions i iteracions; a més, el codi sovint està molt concatenat o el resultat d'una determinada instrucció (per exemple, el valor d'una determinada variable) s'utilitza com a entrada o és preparatori per a instruccions posteriors segons la lògica de dividir i conquerir .
Execució
Un programa escrit en llenguatge ensamblador o en un llenguatge de programació d’alt nivell ( codi font ) només es pot executar compilant el codi font en codi objecte o traduint-lo al llenguatge de màquina que donarà vida al programa executable o mitjançant un intèrpret .
- Per part del sistema operatiu : a la majoria d’ordinadors moderns, basats en l’ arquitectura de von Neumann , l’execució d’un programa binari requereix que, sota l’activitat i control del sistema operatiu , el programa es carregui inicialment a la memòria primària (per exemple, RAM ), normalment a partir d’un dispositiu de memòria massiva (o memòria secundària ), com ara un disc dur . A continuació, s'identifica el " punt d'entrada " del programa (és a dir, la primera instrucció) i es copia la direcció de memòria respectiva en un registre de processador anomenat comptador de programes . En aquest punt, la unitat de control inicia un cicle de recuperació-execució al processador, que rep la instrucció "apuntada" repetidament pel comptador del programa , augmenta el comptador del programa per apuntar-lo a la següent instrucció i executa la instruccions carregades seqüencialment en ordre. Es pot veure que, per defecte , el bucle fetch-execute implica una execució seqüencial de les instruccions del programa. Tanmateix, la instrucció actual pot modificar el comptador de programes : aquesta operació correspon a una instrucció de salt de salt o a una instrucció de salt condicional que és el mecanisme fonamental sobre el qual la implementació de les estructures de control més avançades per compiladors i intèrprets. El sistema operatiu veu un programa en execució com un procés o conjunt de processos, gestionats mitjançant trucades al sistema , i diversos programes / processos es poden executar simultàniament mitjançant qualsevol multitasca que ofereix el propi sistema operatiu i que gestiona el planificador .

- Per part del maquinari: un programa escrit directament o convertit en llenguatge de màquina es pot executar directament des d’un ordinador (entès com a maquinari ). L’execució de codi per part d’una màquina de maquinari en el cicle d’execució i recuperació és possible gràcies a la capacitat del processador d’executar una sèrie d’ instruccions bàsiques ( conjunt d’instruccions ), en les quals el programa es mapeja / tradueix a nivell de llenguatge de màquina., gràcies als circuits electrònics bàsics ( circuits integrats ) que conformen el propi processador. Des del punt de vista de l'usuari, en ordinadors moderns això sol produir-se gràcies a l'exercici, la gestió o el control de recursos de maquinari (processador, memòria, etc ...) operats pel sistema operatiu que actua com a plataforma de programari del sistema. L'única excepció es produeix quan l'ordinador està engegat, quan arrenca i executa el firmware que s'encarrega de provar l'electrònica i carregar el sistema operatiu. Un cop el procés d'arrencada ha passat el control al sistema operatiu, no es pot executar cap programa directament des del maquinari. Amb el pas del temps, s'ha tornat estrany que un programa sigui adequat per a l' execució directa d'un ordinador pensat només com a maquinari ; normalment requereix una màquina virtual que inclogui el maquinari de l'ordinador amb l'addició d'una o més capes de programari que ajudin a crear l' entorn d'execució adequat per al programa. Els mateixos programes executables solen requerir la presència d’un determinat sistema operatiu , determinades biblioteques , etc. Tot i que les línies generals de funcionament d’una màquina virtual són de vegades força similars a les descrites anteriorment per a la màquina de von Neumann, en molts casos difereixen substancialment d’ella, introduint nombrosos conceptes no presents en aquesta arquitectura (per exemple, els registres d’activació de la pila) . Es pot dir que un llenguatge de programació és tant més alt com més la màquina virtual corresponent presenta característiques conceptualment distants dels mecanismes fonamentals de l’arquitectura de von Neumann (o, en general, de l’arquitectura de maquinari subjacent).
Articles relacionats
- ABEND
- Crash (informàtica)
- Programació d'ordinador)
- Funció (IT)
- Programa executable
- Llenguatge de màquina
- Programador
- Reflexió (informàtica)
- Rescue (ordinador)
Altres projectes
-
Wikimedia Commons conté imatges o altres fitxers del programa
Enllaços externs
- Definició de "programa" a Webopedia , a webopedia.com .
- Definició de "programa" a Agtivity , a Agtivity.com . Consultat l'1 de maig de 2019 (arxivat de l' original el 14 de juny de 2013) .
- Definició de "programa" a FOLDOC , a wombat.doc.ic.ac.uk (arxivat de l' original el 7 de setembre de 2005) .
Control de l'autoritat | LCCN (EN) sh85029524 · GND (DE) 4047394-6 · BNE (ES) XX526558 (data) |
---|