“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 4jfkCU
}PTYNidlR
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 _p"nR
]g2Y/\)a
以下是用不同语言写成的Hello World程序的几个例子: qCi6kEr
Ada 3i/$YX5@
with Ada.Text_Io; use Ada.Text_Io; $*tq$DZ4&
procedure Hello is 3M=ym.
begin R_e{H^pY^
Put_Line ("Hello, world!"); PMe bn$(
end Hello; ^F"Q~?D)
Fc%@
>
SU2Jw
汇编语言 W9D]s~bO;
C0eP/d
x86 CPU,DOS,TASM _@3@_GE
MODEL SMALL nlQ<Aa-%
IDEAL C0|<+3uND=
STACK 100H Pwn"!pk
],YIEOx6
DATASEG {+_pyL
HW DB 'Hello, world!$' M.iR5Uh
hqd}L~o:
CODESEG ? >SC:{(
MOV AX, @data 9=p^E# d
MOV DS, AX })rJU/
MOV DX, OFFSET HW i/N4uq}'A<
MOV AH, 09H [4KW64%l
INT 21H 0wU8PZ Nj
MOV AX, 4C00H $@<qaR{t \
INT 21H 8.3888
END B#9rqC
Z[[o u?c
-]\cUQ0
x86 CPU,GNU/Linux,NASM (\}>+qS[
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). gswp:82e2
;Enter this into "hello.asm" then type: [HGGXgN
;"nasm -f elf hello.asm" Bt[OGa(q
;"ld hello.o -o hello" c%%r
;"./hello" E$"( :%'v
`!rH0]vy
section .data ;data section declaration UE33e(Q<
msg db 'Hello World!',0AH t2d_XQOK
len equ $-msg ;string length /^v?Q9=Y
#-?pY"N,
section .text ;code section declaration )xYv$6=
global _start ;entry point (start of execution) m22M[L(q
_start: mov edx,len ;string length 28J
;9
mov ecx,msg ;string start 4)./d2/E
mov ebx,1 ;file handle: stdout x;ym_UZ6e
mov eax,4 ;sys_write \' (_r
int 80h ;kernel system call t>p!qKrE'J
ZWH?=Bk:
mov ebx,0 ;return value !mLQdkTE
mov eax,1 ;sys_exit ij&_>
int 80h ;kernel system call 9Ps[i)-
*<?or"P
vcTWe$;Q
x86 CPU,Windows,MASM32 Sp8Xka~5*#
.386 6yEYX'_
.model flat,stdcall (%*CfR:>
option casemap:none v3SH+Ej4
;Include 文件定义 #hvLv
include windows.inc D5x }V
include user32.inc 0T-y]&uo
includelib user32.lib mGR}hsQpn
include kernel32.inc }`M53>C,gQ
includelib kernel32.lib kNqSBzg
;数据段 {?tK]g#
.data mNS7/I\
szCaption db 'A MessageBox!',0 wG6@.;3
szText db 'Hello,world!',0 .1R:YNx{/
;代码段 VbR/k,Co
.code %%J)@k^vH
start: $OOZ-+8
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK CMI'y(GN
invoke ExitProcess,NULL -=_bXco}
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ~xI1@^r
end start M =Pn8<h~
\z"0lAv"
$U=E7JO
AWK ZNb;24
BEGIN { print "Hello, world!" } <-KHy`u
,'[&" Eg
Sj?u^L8es}
BASIC `tZu~
n
传统版BASIC(例如GWBASIC): bH+x `]{A
+76{S_CZ
10 PRINT "Hello, world!" jM`)Nd
20 END rUZRYF4C
h'Tn&2r6
或在提示符输入: Uawf,57v<
"JI FF_
?"Hello, world!":END v^;-w~?3
a#H2H`%
现代版BASIC(例如Quick BASIC): UUb n7&
[KrWL;[1<
Print "Hello, world!" #sl_
BC9
8vFt<k}G
以下的语句在Quick BASIC中同样有效: O:02LHE
|<nS<x
? "Hello,world!" I,4t;4;Zk
1~BDtHW7`n
jIY
BCPL V=yRE
GET "LIBHDR" gp07I{0~m
v@zpF)|
LET START () BE :|hFpLt
$( / S
WRITES ("Hello, world!*N") q-c9YOz_
$) ?v-Y1j
D(3\m)
a& >(*PQ
Befunge ua$H"(#c
"!dlrow olleH">v |,zcrOo]
, QmQsNcF~z
^_@ f8]Qn8
]y&w