“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。
Ltk'`
LYTx8
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 op!ft/Yyb
dP[vXhc
以下是用不同语言写成的Hello World程序的几个例子: 5a8[0&hA 2
Ada XFj\H(D
with Ada.Text_Io; use Ada.Text_Io; [Eq7!_3
procedure Hello is :eHD{=
begin +-%&,>R
Put_Line ("Hello, world!"); #:q$sKQ_$
end Hello; YJ6y]r
K2,
(w1M\yodV
/Kw}R5l
汇编语言 ZnrsJ1f:
|gV$ks\<
x86 CPU,DOS,TASM GbFtX\s+5j
MODEL SMALL ?$chO|QY
IDEAL vk:k ~
STACK 100H 1\t# *N
0c-.h
DATASEG 8D
H~~by
HW DB 'Hello, world!$' yuef84~
HpXQD;
CODESEG )2pOCAjL2
MOV AX, @data sY-
]
Q
MOV DS, AX yG v7^d
MOV DX, OFFSET HW xr*%:TwCta
MOV AH, 09H UnE[FYx
INT 21H `d,v
MOV AX, 4C00H e>zv+9'Q
INT 21H ;q"Yz-3
END w=;Jj7}L
w'r?)WW$
`GpOS_;
x86 CPU,GNU/Linux,NASM xs}3=&c(
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). V7gv@<1<y
;Enter this into "hello.asm" then type: Nn/f*GDvK
;"nasm -f elf hello.asm" 5LX'fL7zU
;"ld hello.o -o hello" [X&VxTxr
;"./hello" X]1Q# $b
o9XT_!Cwg
section .data ;data section declaration .%"s|
D
msg db 'Hello World!',0AH c/'Cju W
len equ $-msg ;string length G u4mP
0K<|>I
section .text ;code section declaration llE_-M2gH
global _start ;entry point (start of execution) fxOa(mt
_start: mov edx,len ;string length F,.dC&B
mov ecx,msg ;string start w=Yc(Y:h
mov ebx,1 ;file handle: stdout C f(g
mov eax,4 ;sys_write />dH\KvN
int 80h ;kernel system call q}+Fm?B
vU9j|z
mov ebx,0 ;return value RG8Ek"D@
mov eax,1 ;sys_exit 3;'RF#VL
int 80h ;kernel system call +oRBSAg -
GF/!@N
L5RBe
x86 CPU,Windows,MASM32 \2^_v'
>K
.386 Ve9*>6i&-4
.model flat,stdcall U{Xx)l/o
option casemap:none V"u .u
;Include 文件定义 9`FPV`/
include windows.inc 7Ap==J{a
include user32.inc Z1Pdnc7S[
includelib user32.lib EG#mNpxE
include kernel32.inc y{#9&ct&
includelib kernel32.lib 5<77o|
;数据段 r"hogmFD;
.data gNaB^IY
szCaption db 'A MessageBox!',0 g5[r!XO
szText db 'Hello,world!',0 mhi^zHpa
;代码段 ZD#{h J-
.code =8W'4MC
start: V+>.Gf
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK qgkC)
invoke ExitProcess,NULL 7f_tH_(
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ,xOOR
end start * R_mvJlT
~ \o
hH
8h$f6 JE
AWK 3cB=9Y{<
BEGIN { print "Hello, world!" } %^ LwLyoVM
eZvG
=67tQx58
BASIC bKac?y~S_
传统版BASIC(例如GWBASIC): 9*CJWS;
c0.? d]
10 PRINT "Hello, world!" Uy;e5<<
20 END ?Vo/mtbY5X
<E1ngG
或在提示符输入: Br}0dha3E
m-AW}1:\f
?"Hello, world!":END =&x
u"V
/=+Bc=<lZ
现代版BASIC(例如Quick BASIC): ,cwjieM
~`!{5:v
Print "Hello, world!" " ,>,t_J
$e/[!3CASP
以下的语句在Quick BASIC中同样有效: @3WI7q4
aC,?FWm
? "Hello,world!" CMviR<.
t(r}jU=qw
WP ~]pduT
BCPL %=<