哪些编程语言不被视为高的水平?

在信息学理论,我听到和读到的高层次和低层次的语言所有的时间。

但我不明白为什么这仍然是相关的,因为不只是今天使用汇编任何(相关的)低级语言。

所以,你得到:

低级

  • 汇编

绝对不低级别

  • C
  • BASIC
  • FORTRAN
  • COBOL
  • ...

高水平

  • C ++
  • 红宝石
  • 蟒蛇
  • PHP
  • ...

如果汇编器是低层次的,你怎么可以把例如,C到同一个列表。 我的意思是:C是非常高的水平相比,汇编。 即使是COBOL,Fortran语言等相同

  • 那么,为什么大家不断提高,低层次的语言,如果汇编程序是真正的唯一的低级语言?

--------------解决方案-------------

根据维基百科,低级别的语言是机器代码和汇编。

从来源:

在计算机科学中,低阶语言是一种编程语言,它提供很少或没有抽象从计算机的指令集架构。 字“低”指的是小的或不存在的量的语言和机器语言之间的抽象; 正因为如此,低级语言有时被描述为“接近硬件”。

然后,回答:

那么,为什么大家不断提高,低层次的语言,如果汇编程序是真正的唯一的低级语言。

我不知道是谁“人人”是的,但我冒昧猜测,回来时,高级语言并没有想象中司空见惯,因为他们有今天,它更多的相关谈论低层与高层(因为有一个相对显著量程序员在编写汇编代码)的。 在现代社会是一个不太重要的区别。 就个人而言,我很少听到使用这些术语的人除了装配与否(区分除时可能会听到有人提出了Python指的是C或C ++作为低级别的时间,但这不是在原来定义的精神)。

你会发现,

许多真理,我们坚持依靠我们自己的观点。

对于C程序员,汇编是低级语言。 为一个Java程序员,C为一个低级别的语言等。

我怀疑人们编程的第一个存储程序计算机1和0会想到汇编一个高层次的语言。 这是相对的。

(引自绝地归来的)

你问一个比较主观的问题; 这是一个关于术语,即白话,和观点的问题。

例如,Lisp语言是一个高层次或低层次的语言? 如果执行的是一个Lisp计算机上运行?

通常,当人们试图生成从低电平向高电平的频谱,他们正试图量化是一定程度的“亲近的硬件”,而不是的程度的“抽象”。

特质,向着实现的亲近硬件计数:

  • 程序员直接控制数据的存储器布局,并具有在运行时访问数据的存储器地址。
  • 数学操作在硬件方面定义或以符合不同类型的硬件松散定义。
  • 有可能是一个库,提供动态存储器分配,但是使用的动态存储器是手动的。
  • 记忆中的字符串操作管理是手动的。

匡威特质,对从硬件实现的抽象数:

  • 程序员不必的数据(参考而不是指针)地址运行时访问。
  • 数学操作在不依赖于特定的硬件特定的术语定义。 (例如,ActionScript 3的支持Number类型,自转换整数到浮点,而不是经验溢出。)
  • 动态内存管理是由环境来处理,可能是通过引用计数,垃圾回收,或其他自动内存管理方案。
  • 记忆中的字符串操作管理始终是隐藏的程序员和环境处理。

其他品质可能使语言非常抽象相比,在其上运行的硬件:

  • 声明,基于搜索的语法。 (如序言)

有了这样考虑到这些因素,我会修改你写了如下的光谱:

最低级别:

  • 所讨论的平台的汇编语言。

低层次的语言比汇编更高级别的流量控制:

  • C,C ++
  • 帕斯卡尔

高级语言:

  • FORTRAN
  • COBOL
  • 蟒蛇
  • Perl的

最高层次的语言:

  • PROLOG
  • 蟒蛇
  • 方案

Python中出现两次的意图 - 它跨越这取决于如何编写代码的频谱的一部分。

由于低的水平,我想补充:

  • .NET IL
  • Java的JVM
  • 使用环境,如VB6其他P码

一语中的“级别”是一个移动的目标。1973年,PL / I被认为是一个高层次的语言。 如今,C被认为是(至少是语言专家)作为一个低层次的语言[见脚注。 一些原因:

  • 公开数字的机器级表示
  • “整数”算术可以溢出
  • 字符串没有真正的支持,或者至少是,字符串是不是一流
  • 手动内存管理
  • 地址运算
  • 不安全

一个高层次的语言可能包括

  • 支持独立的目标机器的整数类型
  • 默认整数运算从来没有溢出,除非机器内存用完
  • 弦乐与一流的值,例如,连接建
  • 没有地址运算自动内存管理
  • 安全

有些考生为“高级语言”这个定义,可能包括图标,计划,Smalltalk和一些你最喜欢的脚本语言。

早在当我还是一个年轻的学者和恐龙漫游地球的一天,人们称之为图标一个“非常高层次的语言”。 就在15年前,你甚至可以参加在非常高级语言有学问的专题讨论会。 但是,这个词已不常用了。

为什么每个人都不断提高,低层次的语言?

即使“高”和“低”之间的差别不断变化,如上面列出的区别仍然是重要的。 而且这么多的区别,可以将“高”和“低”是一个有用的简写。 但没有多大用处,一个愤世嫉俗者,一个高层次的语言是一个看起来至少强大不管我最喜欢的语言和低级语言是一切。 换句话说,“级别”可以很容易地堕落为纯粹的骂人。

附注:这是很难找到在专业会议上使用引文术语,特别是在专业人士不要使用术语“低级”和“高层次”的,因为他们没有这样的技术。 但danben问引文,我发现一对夫妇:

  • 在计算机视觉一个审阅文章“为用户提供所要求的精度,实验方案通常用一个低级语言(例如C或Pascal),”。
  • 由Necula等重要文件“C程序设计语言是众所周知的,其在处理低层次结构的灵活性,”。


PS不要指望过多地在维基百科上关于编程语言的良好的信息,尤其是在维基百科参考引用任何参考或来源

纯粹猜测这里,但是这可能是语言的转变,即低收入和高层次的汉语语言之间的区别正在慢慢演变在人民的心目中变成managed-和非托管语言,类型化和非类型化,语言之间的差异的情况下, etc.etc。 (至少在了人们所使用的术语)。

在很大程度上,“低层次”和“高层次”不是二进制类,但一个统一体。 有一些语言是明显的低级(汇编,机器代码),但除此之外,还有真的只有“更高级别”和“低级别”。

在我看来,“低层次”的语言要求,看起来更像是计算机的体系结构,和“更高层次”的语言接受,看起来更像是这个问题的结构代码代码。 但与,语言都可以是高级别为一个问题和低级另一个。

分类:编程语言 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.197 (s). 10 q(s)