“Hello, World!”程序是一个只在计算机屏幕上打印出“Hello, World!”(英语,意为“世界,你好!”)字串的计算机程序。该程序通常是计算机程序设计语言的初学者所要学习编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境以及运行环境已经正确安装。 64xq@_+
3 d
$
将Hello World程序作为第一个学写的程序,现在已经成为一种传统。该程序最早出现在由Brian Kernighan和Dennis Ritchie写的计算机程序设计教程《C语言程序设计》。 1&N|k;#QS
:&:IZkO
以下是用不同语言写成的Hello World程序的几个例子: ;]YQWK
Ada F[m"eEX
with Ada.Text_Io; use Ada.Text_Io; oz
$T.
procedure Hello is juOOD
begin jusP
aAdW
Put_Line ("Hello, world!"); h<;kj#qbb
end Hello; tTrUVuZ
B~zP!^m
oEPO0O
汇编语言 at7|r\`?-
N'hj
x86 CPU,DOS,TASM P5M+usx
MODEL SMALL zWvG];fsN
IDEAL `.>5H\w0e
STACK 100H ;m6Mm`[i<
BkfWZ O{7
DATASEG \bAsn89O
HW DB 'Hello, world!$' xHEkmL`)4
Ch-56
CODESEG 9Br2}!Ny
MOV AX, @data <K4`GT"n
MOV DS, AX rx`G*k{X
MOV DX, OFFSET HW Yas! w'
MOV AH, 09H K8E:8`_cx
INT 21H ~@a7RiE@
MOV AX, 4C00H #:Z"V8n'
INT 21H XgY( Vv
END sX53(|?*
iw1((&^)"
Yc;cf%c1
x86 CPU,GNU/Linux,NASM K0B
J
;"Hello World" for Linux on Intel 80x86 using nasm (Intel syntax). N}{CL(xi
;Enter this into "hello.asm" then type: /E>z8J$
;"nasm -f elf hello.asm" ^pz3L'4n
;"ld hello.o -o hello" T8Sgu6:*R
;"./hello" ,])@?TJb@
48,Aq*JFw
section .data ;data section declaration SPKen}g
msg db 'Hello World!',0AH ^$3 ~;/|
len equ $-msg ;string length ;:xOW$
Y ON@G5^
section .text ;code section declaration )Y':u_Lo
global _start ;entry point (start of execution) ]P/eg$u'I
_start: mov edx,len ;string length x h[4d
mov ecx,msg ;string start 0[6llcuj
mov ebx,1 ;file handle: stdout Fs_,RXW"
mov eax,4 ;sys_write 7kpCBLM(}
int 80h ;kernel system call *8k`m)h26
fM8kS
mov ebx,0 ;return value BcV;EEi
mov eax,1 ;sys_exit a(CZGIB
int 80h ;kernel system call p'{ `Uvr
$t5
0<1
Bm%.f!`
x86 CPU,Windows,MASM32 /bA\O
.386 k f~71G+
.model flat,stdcall js
)G
option casemap:none uYjJDLYoHl
;Include 文件定义 =y >P>&sI
include windows.inc !v\m%t|.
include user32.inc 0@a6r=`el
includelib user32.lib \phG$4(7+
include kernel32.inc ll;#4~iA
includelib kernel32.lib #|^7{TN
;数据段 5r/QPJ<h
.data 6suB!XF;
szCaption db 'A MessageBox!',0 Bv"Fx*{W
szText db 'Hello,world!',0 WH :+HNl1d
;代码段 QC>I<j&`!
.code 'qLk"
start: E&0A W{
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK :4$Ex2
invoke ExitProcess,NULL
Z4'"*
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> fX G+88:2
end start [;dWFG"f
UNocm0!N'
DoWY*2E
AWK bTC2Ya
BEGIN { print "Hello, world!" } xD#PM |I
lD2>`s5
ia|^>V>-
BASIC %_+9y??
传统版BASIC(例如GWBASIC): KmV#%
d
:7Mo0,Bw,
10 PRINT "Hello, world!" RLY Ae
20 END k1>%wR
{npKdX
或在提示符输入: P,AS`=z
9\TvX!)h
?"Hello, world!":END `h5HA-ud
`g%]z@'+?
现代版BASIC(例如Quick BASIC): aq"E@fb
rBs7,h
Print "Hello, world!" D+rDgrv
GSV,
以下的语句在Quick BASIC中同样有效: )Y~q6D K
hXS'*vO"
? "Hello,world!" bf3LNV|
"n
'*_rh>+
9<<$uf.B
BCPL 0<{/T*AU:
GET "LIBHDR" mquna"}N
!_<. 6ja
LET START () BE `{I,!to
$( 5WP[-J)
WRITES ("Hello, world!*N") [.<