“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 $5yH(Z[[
H!?Av$h`
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 v8Vw.Ce`f
N7Kq$G2O
以下是用不同语言写成的Hello World程序的几个例子: 9]< p
Ada i,r O3Jn
with Ada.Text_Io; use Ada.Text_Io; z#ab
V1
Xi
procedure Hello is P"Lk(gY
begin wzVx16Rvc
Put_Line ("Hello, world!"); B7zyMh
end Hello; 4nK\gXz19
{;4Y5kj
)e(Rf!P{
汇编语言 ELf cZfJ
tJ>%Xop
x86 CPU,DOS,TASM N:?UA
MODEL SMALL ]VtVw^ ir
IDEAL mk(O..)2
STACK 100H 4y\qJw)~U
W/!M
eTU&E
DATASEG R4"*<%1
HW DB 'Hello, world!$' @}eEV[Lli
+;^UxW
CODESEG xP#vAR
MOV AX, @data m5m}RWZ#
MOV DS, AX B>Tfyo
MOV DX, OFFSET HW UF0W%Z
MOV AH, 09H ,n<t':-
INT 21H 'n4Ro|kA
MOV AX, 4C00H 'w3BSaJi
INT 21H nr7#}pzo
END Q&+Jeji
BmR++ ?L
a~q_2S]h
x86 CPU,GNU/Linux,NASM fFDI qX
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). O'm><a>8
;Enter this into "hello.asm" then type: O<7Q>m
;"nasm -f elf hello.asm" t"x
8]Gy
;"ld hello.o -o hello" ,I6jfXI4
;"./hello" yMaU`z
5.m&93P
section .data ;data section declaration p)6!GdT
msg db 'Hello World!',0AH R=
,jqW<
len equ $-msg ;string length Z6s-n$dSm
p]h;M
section .text ;code section declaration -#<6
global _start ;entry point (start of execution) v:\8
_start: mov edx,len ;string length 4/KGrY!ck
mov ecx,msg ;string start 4<V%7z_.B
mov ebx,1 ;file handle: stdout 3y^PKIIrt
mov eax,4 ;sys_write %Ms"LoK
int 80h ;kernel system call X$*MxMNs
Pq\
`0/4_
mov ebx,0 ;return value kY>jp@wV
mov eax,1 ;sys_exit mzw`{Oy>L
int 80h ;kernel system call e&~vO| 3w%
LGnb"ZN
)/HbmtX qI
x86 CPU,Windows,MASM32 KLb"_1z
.386 MWdev.m:Z
.model flat,stdcall +85#`{ D
option casemap:none Nq]8p =e
;Include 文件定义 o;'E("!<Z
include windows.inc S]!s)q-- z
include user32.inc 1oKF-";u(
includelib user32.lib #(@!:f1
include kernel32.inc z$g
cK>@l
includelib kernel32.lib y;Ez|MS
;数据段 @*?)S{8
.data /my5s\;s|z
szCaption db 'A MessageBox!',0 ')R+Z/hG.
szText db 'Hello,world!',0 w8=&rzr8
;代码段 OaTnQ|*
.code G5WQTMzf&
start: d]A.=NAc
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK PP*6nW8
invoke ExitProcess,NULL x[?N[>uw
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [U5@m]>^
end start JJ:p A_uX
SjosbdD
Vz.G!*>Dg
AWK _V2^0CZ
BEGIN { print "Hello, world!" } Eep~3U
yq H
.lsD+}
BASIC m}UcF oaO
传统版BASIC(例如GWBASIC): cI Sugk~
* 'eE[/K
10 PRINT "Hello, world!" &}'FC7}
20 END $>JfLSyC
[T
|P|\M
或在提示符输入: mkE_ a>
Yg/g9$'
?"Hello, world!":END GLO%>&
}VU^ 8D
现代版BASIC(例如Quick BASIC): C/$bgK[ev
s5bqS'%
Print "Hello, world!" 3_ bE12
ZLjEH7
以下的语句在Quick BASIC中同样有效: SFu]*II;{
FR9w0{o
? "Hello,world!"
HNJR&U t
gmUXh;aHc
A%[e<vj9
BCPL {EfA#{x
GET "LIBHDR" QdIx@[+WOq
_sb~eB~<(
LET START () BE i:a*6b.U@N
$( zif&