Hello

World

对很多人来说,每当学习一门新的编程语言,写下的第一行代码可能都是“Hello,World!“。因此,”Hello,World!" 已经成为一段经典程序,这便是每个程序员梦开始的地方。

下面小息将会为你展示怎样用 20 种不同的编程语言编写“Hello,World!”程序。这样,也能让你看到计算机编程语言多年的历史演进。

1.汇编语言 - 1949 年

汇编语言创建于 1949 年,下面这是为 Intel 8080 平台的 8 位处理器编写的,这款处理器于 1974 年 4 月下旬发布。

bdos    equ    0005H    ; BDOS entry point

start:  mvi    c,9      ; BDOS function: output string

lxi    d,msg$   ; address of msg

call   bdos

ret             ; return to CCP

msg$:   db    'Hello, world!$'

end     start

2.Fortran - 1957 年

Fortran 编程语言是 Formula Translation 的衍生版本。它是一种可编译的通用命令式编程语言,特别适用于数值和科学计算。Fortran 语言创建于 1957 年,以下是使用该语言第一个版本编写的“Hello, World!”程序:

PROGRAM

HelloWRITE (*,*) 'Hello, World!'

STOP

END

3. Lisp - 1958 年

Lisp 是最古老的编程语言家族,它既是命令式语言,又是函数式语言。Lisp 最初创建于 1958 年,当时是作为展示程序的实用模型发布的。在 20 世纪 70 年代和 80 年代,Lisp 家族成为人工智能领域非常受欢迎的语言。以下是用 Lisp 编写的“Hello, World!”程序:

(write-line "Hello, World!")

4.Cobol - 1959 年

Cobol 正式创建于 1959 年,所以 Cobol 编程语言在 2019 年刚刚度过它的 60 周年纪念日。Cobol 是 COmmon Business Oriented Language 的缩写,人们发明它是希望将其作为业务编程应用的通用语言。2019 年,Cobol 在银行业和保险业中仍然应用广泛。以下是用 Cobol 编写的“Hello, World!”程序:

IDENTIFICATION DIVISION.

PROGRAM-ID. HELLO-WORLD.

PROCEDURE DIVISION.

DISPLAY "Hello, World!"

STOP RUN.

5.BASIC - 1964 年

BASIC 是 Beginner’s All-purpose Symbolic Instruction 的缩写,它是一种高级编程语言,这种语言的主要目标是容易使用,正如以下“Hello, World!”程序所证实的这样:

print [Hello World !]

6.Logo - 1968 年

Logo 语言很像 Lisp 语言,但比 Lisp 更容易使用,这正是 Logo 被发明出来的原因,正如人们通常所认为的那样,Logo 是“没有圆括号的 Lisp 语言”。

main()

{

putstr("Hello world!*n");

return(0);

}

7.B - 1969 年

B 语言发明于 1969 年,这种语言现在已经被废弃,但它曾扮演了一个重要角色,它极大地促进了 C 语言的诞生,而现在 C 语言正被广泛使用着。

begin

writeln('Hello, World!')

end.

8.Pascal - 1970 年

Pascal 是一种命令式编程语言,创建于 1970 年。它是为教学而设计的,其特点是语法清晰、严谨,有助于生成良好的程序结构。

begin

writeln('Hello, World!')

end.

9.Forth - 1970 年

Forth 是一种基于命令式堆栈的计算机编程语言,由 Charles H. Moore 在 20 世纪 60 年代创建,但是,它的第一个主要版本是在 1970 年发布的。这门语言在 1994 年被 ANSI 标准化,并且在 1997 年被 ISO 采用。为这门语言送上美好的祝福吧,2014 年它甚至迎来了一个新版本,也就是 Forth 2012。以下是 Forth 1970 版本的“Hello, World!”程序:

: HELLO  ( -- )  ." Hello, World!" CR ;

HELLO

10.C - 1972 年

贝尔实验室的 Dennis Ritchie 和 Ken Thompson 在 1972 年开发 UNIX 时发明了 C 编程语言。Ken Thompson 之前已经发明了 B 语言。Dennis Ritchie 受到了 B 语言的启发,决定发明一种新的语言,即 C 语言,在其中引入了类型概念。

#include

int main(void) {

printf("Hello, World!\n");

return 0;

}

11.C++ - 1980 年

C++ 最初由 Bjarne Stroustrup 创建于 1980 年,和 C 语言同名,但是包含了 class(类)这个概念。C++ 语言正式命名为 C++ 是在 1983 年。这门编程语言现在被 ISO 标准化了,在工业界以及其他领域被广泛使用。

#include

using namespace std;

int main() {

cout << "Hello, World!" << endl;

return 0;

}

12. MATLAB - 1984 年

MATLAB 是“Matrix Laboratory”的缩写,它是一种脚本语言,用于数值计算。MATLAB 在同名的开发环境中编写。

disp('Hello, World!')

13.Objective-C - 1986 年

Objective-C 是一种反身式的面向对象编程语言。它是 C 编程语言的扩展,就像 C++ 一样,但是和 C++ 又不一样,特别是在动态消息分发或者动态加载方面与 C++ 很不一样。当今,它主要用于苹果操作系统:macOS 及其衍生的 iOS 系统中。

#import

int main() {

@autoreleasepool {

NSLog(@"Hello, World!");

}

}

14. Python - 1991 年

Python 是一种解释性编程语言,具有多范式、多平台的特点。Python 支持结构化、函数式和面向对象的命令式编程。这些年来, Python 变得非常流行,甚至在 2019 年成为最受欢迎的语言之一。以下是用 Python 3.0 或更高版本编写的“Hello, World!”程序:

print("Hello, World!")

15. Visual Basic - 1991 年

Visual Basic,简称为 VB,它是第三代事件编程语言,也是微软创建的集成开发环境,用于其 COM 编程模型。

Public Sub Main()

Debug.Print "Hello, World!"

End Sub

16.Java - 1995 年

Java 是 James Gosling 在 1995 年创建的一种面向对象的编程语言,它至今仍然是工业界最受欢迎和使用最多的语言。你能够使用 Java 做任何事情,从客户端到 Web 应用无所不包;而且 Google 选择 Java,用在 Android 操作系统上作为开发应用程序的语言,这又进一步扩展了 Java 能力。

class HelloWorld {

public static void main(String[] args) {

System.out.println("Hello, World!");

}

}

17.JavaScript - 1995 年

JavaScript 是一种脚本语言,主要用于 Web 开发,但现在可以用于服务端,比如 Node.js。JavaScript 是面向原型的编程语言,这种语言里的函数是第一类对象。

document.write('Hello, World!');

18. C# - 2000 年

C# 是微软于 2000 年与 Sun 就 Java 语言发生争执后创建的。C# 是一种面向对象的编程语言,用于 Microsoft.Net 平台上的开发工作。该语言派生自 C++ 和 Java,使用了它们的一些通用语法和其他许多概念。C# 也可以用于开发 ASP.Net 平台上的 Web 应用程序。

using System;

internal static class HelloWorld {

private static void Main() {

Console.WriteLine("Hello, World!");

}

}

19.Go - 2009 年

Go 是一种可编译的、并发式编程语言,受到了 C 和 Pascal 语言的启发而发明的。这种语言是由谷歌开发的,它是从 Robert Griesemer、Rob Pike 和 Ken Thompson 最初提出的概念发展而来的。这位 Ken Thompson 正是在 1969 年创造了 B 语言的那位 Ken Thompson!

package main

import "fmt"

func main() {

fmt.Println("Hello, World!")

}

20.TypeScript - 2012 年

TypeScript 是由微软开发的免费开源的编程语言,旨在提升 JavaScript 代码的开发效率,保证 JavaScript 代码的安全性。TypeScript 语言是 JavaScript 的一个超集,它被转换成 JavaScript,这样任何 Web 浏览器或 JavaScript 引擎都可以解释它。

console.log("Hello, World!");

总结

这次在计算机编程语言世界里进行的跨度达 70 年的时光旅行,小息向你介绍了用 20 种不同语言编写的“Hello, World!”程序呢。

以上编程语言清单只占到人们发明的所有编程语言的一小部分,小息邀请你在评论区分享你知道的其他语言所编写的“Hello, World!”程序,快来让大家开开眼吧!

指导:沈钊

编辑:刘皓栋

审核:马庆懿

32位汇编语言helloworld_梦开始的地方——Hello World!相关推荐

  1. Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)

    Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(畅销10年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 75 ...

  2. windows下32位汇编语言学习笔记

    windows下32位汇编语言学习笔记 第一章  第一章 背景知识 80x86处理器的存储器 4个数据寄存器 EAX,EBX,ECX,EDX EAX寄存器 所有API函数的返回值都保存在EAX里,注意 ...

  3. 32位汇编语言学习笔记(45)--测试简单文件操作接口(完)

     这是<Assembly Language step by step programming with linux>书中的最后一个程序,也是全书中的最复杂的一个程序. 首先看一下这个程 ...

  4. 琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记

    琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记 2011年12月20日 基础篇 第1章 背景知识 1 1.1 Win32的软硬件平台 1.1.1 80x86系列处理器简史 1.1 ...

  5. Windows环境下32位汇编语言程序设计 相关资料

    Windows环境下32位汇编语言程序设计.pdf:https://474b.com/file/15153148-465076702 <Windows环境下32位汇编语言程序设计>随书光盘 ...

  6. Windows环境下32位汇编语言程序设计(典藏版)

    <Windows环境下32位汇编语言程序设计(典藏版) > 基本信息 作者: 罗云彬 出版社:电子工业出版社 ISBN:9787121207594 上架时间:2013-7-8 出版日期:2 ...

  7. windows环境下32位汇编语言程序设计 90盘_程序设计作业题汇总

    C语言程序的基本单位是函数 程序设计语言经历了"机器语言"-"汇编语言"-"高级语言"的发展过程. 编写C语言代码文件的拓展名为.c/编写C ...

  8. windows环境下32位汇编语言程序设计 90盘_Python 0基础详细教程 环境安装01

    Python语言有什么用,首先让大家了解Python语言的基本知识: Python语言是一种解释型,面向对象,动态数据类型的高级程序设计语言,Python语言是数据分析师的首选数据分析语言,通过数据挖 ...

  9. 32位汇编语言条件伪指令和win32汇编关于windows.inc的error A2004

    首先看一下如下的代码: 可以构建成功:运行如下: 如果去掉 include    S:\masm32\include\masm32.inc     include    S:\masm32\inclu ...

最新文章

  1. vs转eclipse之工具快速上手篇
  2. HALCON示例程序inspect_bottle_mouth.hdev玻璃瓶口缺陷检测
  3. 华为mate20pro权限管理_华为钉子户--谈谈Mate20Pro
  4. 云小课丨SA基线检查:给云服务来一次全面“体检”
  5. ArchLinux安装Gnome桌面
  6. MS SQL入门基础:查看与修改索引
  7. sql如何重命名实例_重命名Ubuntu Linux上SQL Server实例
  8. 进阶01Object类
  9. Cocos Creator 如何在 VideoPlayer 上面放置 UI 控件
  10. https证书密钥生成步骤
  11. Java基础static关键字理解
  12. mysql 连续打卡天数_Sql如何统计连续打卡天数
  13. oracle OCP考点在哪,Oracle OCP认证考哪几门
  14. 如何使用国内代理ip?
  15. python将三位数分离(format格式)_Python格式函数,python,之,format
  16. Spring懒加载机制原理和配置讲解
  17. XSS跨站脚本攻击(level1-10)
  18. (附源码)springboot码头作业管理系统 毕业设计 341654
  19. 妙用switch 计算几天是 一年的第几天
  20. python处理MNIST数据集

热门文章

  1. 用iframe设置代理解决ajax跨域请求问题
  2. 【解决线程安全问题:通过Lock锁对象】
  3. maven上解决循环依赖、又不想新加第三模块的方法
  4. JS 使用html2canvas实现截图功能的问题记录和解决方案
  5. node后台fetch请求数据-Hostname/IP doesn‘t match certificate‘s altnames解决方法
  6. iOS下Html页面中input获取焦点弹出键盘时挡住input解决方案—scrollIntoView()
  7. 如何使用C#中的WebClient将数据发布到特定URL
  8. EF迁移:回滚上一次应用的迁移?
  9. 如何显示jQuery中的加载微调器?
  10. 您如何重命名MongoDB数据库?