“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 yDw^xGws
5{6ebq55"
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 '?!2h'
;"GI~p2~7
以下是用不同语言写成的Hello World程序的几个例子: o6;VrpaNi
Ada GG_A'eX:I
with Ada.Text_Io; use Ada.Text_Io; ?Qs>L~
procedure Hello is YCQ+9
begin #D!3a%u0
Put_Line ("Hello, world!"); fI0L\^b%
end Hello; F[OBPPQ3
i@d@~M7/
hO:X\:G
汇编语言 e 3>k"
YuDNm}r[
x86 CPU,DOS,TASM ts0K"xmY\c
MODEL SMALL iF]vIg#h
IDEAL ]0:R^dHE
STACK 100H xE.=\UzJ
S[M\com'
DATASEG b;Im +9&
HW DB 'Hello, world!$' v]27+/a$c
? 5
V-D8k
CODESEG `24:Eg6r
MOV AX, @data N,_ej@L8
MOV DS, AX y/2U:H
MOV DX, OFFSET HW 'lNl><e-
MOV AH, 09H `+/[0B=.
INT 21H h Tn^:%(
MOV AX, 4C00H B[MZPv)
INT 21H Bj7\{x,?
END -nT+!3A8
3/@'tLtN
z95V 7E
x86 CPU,GNU/Linux,NASM Bf88f<Z
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). y]\R0lR
;Enter this into "hello.asm" then type: i&FC-{|Z
;"nasm -f elf hello.asm" QX~*aqS3s8
;"ld hello.o -o hello" Ic&t_B*i}]
;"./hello" _>:g&pS/
tdr*>WL
section .data ;data section declaration M !OI :v
msg db 'Hello World!',0AH vR~*r6hX8
len equ $-msg ;string length I_ .;nU1xA
"WYcw\@U
section .text ;code section declaration 5tl}rmI`
global _start ;entry point (start of execution) Fk(0q/b
_start: mov edx,len ;string length z_l3=7R
mov ecx,msg ;string start E(U}$Zey
mov ebx,1 ;file handle: stdout ddHIP`wb
mov eax,4 ;sys_write qkUr5^1
int 80h ;kernel system call @+X}O/74
r5iO%JFg
mov ebx,0 ;return value @#H{nj
Z
mov eax,1 ;sys_exit 0I?3@Nz6
int 80h ;kernel system call a\m10Ih:
25ZGuM
/9w}[y*E
x86 CPU,Windows,MASM32 |H_)u
.386 PewPl0
.model flat,stdcall X7c*T /
option casemap:none Yhw* `"X
;Include 文件定义 khv! \^&DD
include windows.inc X-{:.9
include user32.inc }\DQxHG
includelib user32.lib mQs'2Y6Oa
include kernel32.inc kdYl>M
includelib kernel32.lib #1bgV
;数据段 g&E_|}u4
.data '/
&"
szCaption db 'A MessageBox!',0 :M[E-j;
szText db 'Hello,world!',0 0RSa{iS*A
;代码段 {M~!?#<K
.code b);}x1L.T
start: QT&{M
#Ydn
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK }lb.3fqiA
invoke ExitProcess,NULL #Aan v
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ,m b3H
end start "^D6%I#T
NJtB ;
!Z'm@,+
AWK +li^0+3-'
BEGIN { print "Hello, world!" } (
L6`_)
#*]=
%-A
`A^} X
BASIC -<O:isB
传统版BASIC(例如GWBASIC): zuPH3Q={
KnFbRhu[
10 PRINT "Hello, world!" #EM'=Q%TO
20 END
#129 i2
v/haUPWF\
或在提示符输入: y14@9<~9
?GC0dN
?"Hello, world!":END `WW0~Tp3
}I`|*6Up
现代版BASIC(例如Quick BASIC): 8say"Qz
Q8~pIv
Print "Hello, world!" q%vUEQLBp
N+V-V-PVk
以下的语句在Quick BASIC中同样有效: H5I#/j
E0pQRGPA
? "Hello,world!" 5y'Yosy:
-oo=IUk
o_N02l4J)
BCPL vPsX!m[#
GET "LIBHDR" KE3v3g<
dCK-"#T!
LET START () BE ]/']{*T1
$( D_)vGvv3;.
WRITES ("Hello, world!*N") T:&+#0<
$) N.`]D)57
@&W?e?O ~G
C(P$,;6
Befunge ~<U3KB
"!dlrow olleH">v t}FMBGo[
, +J4t0x
^_@ %dU}GYL_
/YbL{G
)j}
K]oPh:E
Brainfuck ]
6gu
++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<
rh_({rvQ
+++++++++++++++.>.+++.------.--------.>+.>. <Gw<