Quels langages de programmation ne sont pas considérés à haut niveau?
En informatique, la théorie que j'entends et lis de haut niveau et de bas niveau de langues de tous les temps.
Pourtant, je ne comprends pas pourquoi c'est toujours pertinent parce qu'il n'y a pas tout (pertinent) le faible niveau des langues, à l'exception de l'assembleur en usage aujourd'hui.
De sorte que vous obtenez:
De bas niveau
- Assembleur
Certainement pas à faible niveau
- C
- De BASE
- FORTRAN
- COBOL
- ...
De haut niveau
- C++
- Ruby
- Python
- PHP
- ...
Et si l'assembleur est de bas niveau, comment pourriez-vous mettre par exemple C dans la même liste. Je veux dire: C est de très haut niveau par rapport à l'assembleur. Même pour COBOL, Fortran, etc.
- Alors pourquoi tout le monde déclarer haut et de bas niveau de langues si assembleur est vraiment le seul langage de bas niveau?
- Ceux que vous avez énumérés sous
Definitely not low-level
sont appelésmiddle level languages
. Etbinary
est d'un niveau inférieur àasm
😉 Et il est très intéressant de voir que la question sur la demi-douzaine de langage est indépendant de la langue. - Binaire n'est pas un langage de programmation 😉
- À mon humble avis,c'EST 😀
- Parlez-en à quelques-uns des premiers programmeurs, qui sont entrés dans leur code par réglage des commutateurs à bascule sur le panneau avant de l'ordinateur. Je suis sûr qu'ils seront heureux de vous dire à tous au sujet de la programmation en binaire dans les jours avant les assembleurs ont été inventés.
- pourquoi n'est pas binaire un langage de programmation?
- Techniquement parlant, il est correct. Binaire est un système numérique. Le code Machine est une langue.
- Binaire == Assembleur. Après avoir saisi les programmes sur le panneau avant, il n'est PAS utile de faire la distinction entre les données binaires brutes et assembleur version des binaires brutes.
- La façade!? Oh, nous avons utilisé pour rêve de codage de la façade! 😉
- C++ est plus comme "tous les niveaux" -- à votre propre niveau de risque spécifiques 🙂
- Est-ce quelqu'un d'importance, reportez-vous à "niveau intermédiaire langues"? Je n'ai pas vu de telles références.
- Encore une fois,à mon humble avis, Tout ce que vous pouvez programmer en est un langage de programmation. Si le binaire n'est pas de langage de programmation, alors rien ne l'est. en.wikipedia.org/wiki/Turing_machine_examples
- Je pense que vous avez besoin de comprendre la distinction entre une langue, un mot, une lettre de l'alphabet. Zwskx est un mot sur l'alphabet anglais, mais ce n'est pas un mot de la langue anglaise.
- Code Machine == Assembleur, familièrement appelé "Binaire". C'est un tout. C'est d'accord pour autoriser les gens à dire "Binaire" quand ils veulent dire "Code Machine". Ils sont vraiment tous la même langue dans les deux formes -- brutes et moins brut. Et, ils sont les exemples de "bas niveau", avec des variantes comme "PL/M", et "PL/S".
Vous devez vous connecter pour publier un commentaire.
Selon Wikipédia, le faible niveau de langues sont en code machine et de l'assemblée.
À partir de la source:
Ensuite, pour répondre à:
Je ne sais pas qui "tout le monde", mais je me permettrais une supposition que lorsque les langages de haut niveau n'étaient pas aussi courante qu'ils sont aujourd'hui, il est plus judicieux de parler de bas niveau et de haut niveau (parce qu'il y avait une relativement importante quantité de programmeurs de l'écriture de code assembleur). Dans les temps modernes, il est moins importante distinction. Personnellement, j'entends rarement des gens à l'aide de ces modalités, à l'exception de différencier entre l'assemblage ou pas (sauf pour les moments où vous pouvez entendre quelqu'un l'a posée sur Python se référant à C ou C++ bas niveau, mais ce n'est pas dans l'esprit de la définition d'origine).
Vous trouverez que
Pour un programmeur C, Assembleur est un langage de bas niveau.
Pour un programmeur Java, C est un langage de bas niveau et ainsi de suite.
Je soupçonne les gens de la programmation de la tout d'abord stockées-programme d'ordinateur avec 1s et 0s aurait pensé Assembleur, un langage de haut niveau. C'est toute relative.
(Citation de Le retour du Jedi)
Vous demandez à une relativement subjective de la question; c'est une question de terminologie, qui vernaculaire, et de la perspective.
Par exemple, est Lisp un haut niveau, ou un langage de bas niveau? Que faire si la mise en œuvre est en cours d'exécution sur une Machine Lisp?
Souvent, lorsque les gens tentent de construire un spectre de bas niveau à haut niveau, ce qu'ils essaient de quantifier le degré de "proximité avec le matériel", par opposition à la mesure de "l'abstraction."
Qualités qui comptent pour une mise en œuvre de la proximité de la matériel:
Converse qualités qui comptent pour une mise en œuvre de l'abstraction du matériel:
Number
type d'auto-convertit en entier à virgule flottante plutôt que de débordement.)D'autres qualités qui peuvent rendre une langue très abstrait par rapport au matériel sur lequel il s'exécute:
Avec des facteurs comme celles-ci dans l'esprit, je voudrais revoir le spectre que vous avez écrit comme suit:
Niveau le plus bas:
Faible niveau de langues avec plus de contrôle de flux au niveau de l'assemblée:
Les langages de haut niveau:
Plus haut niveau de langues:
Python apparaît deux fois, par l'intention -- il s'étend sur une partie du spectre en fonction de la façon dont le code est écrit.
Bas niveau, je voudrais ajouter:
Le "niveau" d'une langue est une cible mouvante. En 1973, PL/I a été considéré comme un langage de haut niveau. Aujourd'hui, C est considéré (au moins par des professionnels de la langue) comme un langage de bas niveau [voir note de bas de page]. Certaines des raisons:
Un langage de haut niveau peuvent inclure
Certains candidats comme "les langages de haut niveau" par cette définition peut inclure Icône, Plan, Smalltalk, et certains de vos favoris langages de script.
Retour dans la journée quand j'étais un jeune chercheur et les dinosaures parcouraient la terre, les personnes visées à l'Icône comme un "très langage de haut-niveau". Aussi récemment que il y a 15 ans on pourrait même assister à une appris colloque sur un Très Haut Niveau de Langues. Mais ce terme n'est pas utilisé beaucoup plus.
Même si la différence entre "haut" et "bas" ne cesse de changer, des distinctions comme celles énumérées ci-dessus sont encore importantes. Et il y a tellement de nombreux distinction que les mots "haut" et "bas", il peut être utile de sténographie. Mais pas utile à un cynique, un langage de haut niveau est un qui semble au moins aussi puissant que quelle que soit ma langue préférée est, et un langage de bas niveau est tout autre chose. En d'autres termes, le "niveau" peut facilement dégénérer en simple injures.
Note de bas de page: Il est difficile de trouver des citations pour la terminologie utilisée à des réunions de professionnels, en particulier lorsque les professionnels de ne pas utiliser les termes "bas niveau" et de "haut niveau", car ils ne sont pas aussi technique. Mais danben demandé à propos de citations, et j'en ai trouvé deux:
"Pour fournir la précision requise, des programmes expérimentaux sont généralement écrites dans un langage de bas niveau (par exemple C ou Pascal)," dans un comité de lecture de l'article sur la vision par ordinateur.
"Le langage de programmation C est bien connu pour sa flexibilité dans le traitement de bas niveau des constructions," dans un document important par Necula et al.
P. S. Ne comptez pas trop sur Wikipédia pour une bonne information sur les langages de programmation, en particulier si le Wikipedia de référence cites pas de références ou sources
Purement deviner ici, mais cela peut être un cas de la langue-shift, selon laquelle la distinction entre le faible et de haut niveau en langues est la lente évolution dans l'esprit des gens dans la différence entre gérés et non gérés, des langues, tapé et non-langues etc.etc. (au moins dans la façon dont les gens sont à l'aide de la terminologie).
Dans une large mesure, "bas niveau" et de "haut niveau" binaire pas des catégories mais sont un continuum. Il y a des langues qui sont clairement de bas niveau (de l'assemblée, le code machine), mais au-delà il ya vraiment seulement "de haut niveau" et de "bas-niveau".
Comme je le vois, "bas-niveau" langues nécessitent un code qui ressemble plus à de l'architecture de l'ordinateur, et "de haut niveau" langues accepter de code qui ressemble plus à la structure du problème. Mais avec ça, les langues peuvent être de haut niveau pour un problème et de bas niveau pour l'autre.
De bas niveau
Binaire
Assembleur
ET IL
Java JVM
D'autres P-Code utilisé dans des environnements tels que VB6
Certainement pas à faible niveau
C
De BASE
FORTRAN
COBOL
Python
Perl
Pascal
De haut niveau
C++
Ruby
Python
PHP
PROLOGUE
Schéma