Web Analytics Made Easy - Statcounter

[HOME PAGE] [STORES] [CLASSICISTRANIERI.COM] [FOTO] [YOUTUBE CHANNEL]

Llenguatge de programaci?? - Viquip??dia

Llenguatge de programaci??

De Viquip??dia

Un llenguatge de programaci?? ??s un llenguatge inform??tic usat per controlar el comportament d'una m??quina, normalment un ordinador. Cada llenguatge t?? una s??rie de regles sint??ctiques i sem??ntiques estrictes que cal seguir per escriure un programa inform??tic, i que en descriuen l'estructura i el significat respectivament. Aquestes regles permeten especificar tant la classe de dades amb qu?? treballar?? el programa com les accions que realitzar??. Mentre que alguns llenguatges es defineixen per una especificaci?? formal (un document), altres s??n definits oficiosament per una implementaci?? concreta (un compilador).

Actualment existeixen milers de llenguatges de programaci??, i se'n creen de nous cont??nuament. Alguns dels m??s extesos s??n, discutiblement, ASM, C, C++, C# i Java.

Taula de continguts

[edita] Classificaci?? alt nivell-baix nivell

Els llenguatges se solen classificar principalment en llenguatges de baix nivell, que son molt propers al codi binari utilitzat internament per un tipus d'ordinador determinat, i llenguatges d'alt nivell, que son m??s propers al llenguatge hum?? i m??s independents del tipus d'ordinador.

La difer??ncia entre llenguatges de baix i alt nivell es fa evident comparant dos programes que escriuen "Hola" en pantalla, el primer usant llenguatge assemblador per m??quines x86 (baix nivell),

   MODEL SMALL
   IDEAL
   STACK 100H
   DATASEG
       HW      DB      'Hola!$'
   CODESEG
       MOV AX, @data
       MOV DS, AX
       MOV DX, OFFSET HW
       MOV AH, 09H
       INT 21H
       MOV AX, 4C00H
       INT 21H
   END

i el segon utilitzant un llenguatge d'alt nivell (Python),

print "Hola!"

Els llenguatges d'alt nivell es poden classificar tamb?? segons el tipus de model de programaci?? que utilitzen (procedimentals, funcionals, orientats a objectes, etc.). Tamb?? hi ha llenguatges de marcatge, que no s??n llenguatges de programaci??, sin?? que s'utilitzen per estructurar o donar forma a un text. Avui en dia existeixen gran quantitat de llenguatges, m??s o menys especialitzats en diferents tasques.

[edita] Sistema de tipatge

El sistema de tipus defineix com un llenguatge de programaci?? classifica els valors i expressions en tipus, com els manipula, i com hi interacciona. Generalment aix?? inclou la descripci?? de les estructures de dades que el llenguatge pot construir. El disseny i estudi matem??tic d'aquests sistemes ??s conegut com la Teoria de tipus (type theory).

S'ha de recordar per?? que els computadors digitals moderns emmagatzemen internament totes les estructures simplement com a uns i zeros (binari)

[edita] Llenguatges tipats vers llenguatges no tipats

Un llenguatge ??s tipat si l'especificaci?? de cada operaci?? defineix a quins tipus de dades una operaci?? ??s aplicable, amb l'implicaci?? que no ??s aplicable als altres tipus.[1] Per exemple, "aquest text entre cometes" ??s un string. En la majoria de llenguatges de programaci??, dividir un n??mero per un string no t?? sentit. En conseq????ncia la majoria dels llenguatges de programaci?? moderns rebutjaran qualsevol intent de dur a terme una operaci?? com aquesta. En alguns llenguatges, l'operaci?? sense sentit es detectar?? en temps de compilaci?? (comprovaci?? de tipus "est??tica") i ser?? rebutjada pel compilador. Mentre que en d'altres, l'operaci?? sense sentit es detectar?? en temps d'execuci?? (comprovaci?? de tipus "din??mica"), resultant en una excepci?? en temps d'execuci?? (runtime exception).

Un cas especial de llenguatges tipats s??n els llenguatges mono-tipats. Normalment s??n llenguatges de script o de marcatge, com Rexx o SGML, i nom??s tenen un tipus de dades - majorit??riament, cadenes de car??cters que s??n usats tan per dades simb??liques com num??riques.

En constrast, un llenguatge no tipat, com la majoria de llenguatges ensambladors, permet qualsevol operaci?? sobre qualsevol tipus de dades, considerades com a seq????ncies de bits de mides v??ries. Llenguatges d'alt nivell no tipats inclouen BCPL i algunes varietats de Forth.

A la pr??ctica, mentre que pocs llenguatges es consideren tipats des del punt de vista de la Teoria de tipus (verificar o rebutjar totes les operacions), la majoria del llenguatges moderns ofereixen un cert grau de tipatge. Molts llenguatges de producci?? ofereixen alguna manera de subvertir o fer un bypass al sistema de tipus.

[edita] Classificaci?? dels principals llenguatges de programaci??

Vegeu classificaci?? dels llenguatges de programaci??

[edita] Refer??ncies

  1. ??? Andrew Cooke. An Introduction to Programming Languages. Data d'acc??s June 30, 2006.

[edita] Vegeu tamb??

[edita] Enlla??os externs


Llenguatges de programaci??
Ada | ALGOL | Assemblador | Awk | Basic| BCPL | C | C++ | C# | Cobol | D | Delphi | Eiffel | Forth | Fortran | Haskell | Java | Lisp | Logo | MAGIC | Mercury | Miranda | Modula-2 | Oberon | Ocaml | Pascal | PHP | Perl | Prolog | Python | Rexx | Ruby | Scala | Smalltalk | Altres llenguatges...